Documentation Index
Fetch the complete documentation index at: https://mintlify.com/meteor/meteor/llms.txt
Use this file to discover all available pages before exploring further.
What is Meteor?
Meteor is an ultra-simple environment for building modern web applications. It’s a full-stack JavaScript platform that enables rapid prototyping and development using the latest technology.Meteor allows you to use the same code whether you’re developing for web, iOS, Android, or desktop for a seamless update experience for your users.
Core Philosophy
Meteor is built on several key principles:Full-Stack JavaScript
Write your entire application in JavaScript, from client to server to database. This unified language approach eliminates context switching and enables code sharing across environments.Data on the Wire
Instead of sending HTML over the network, Meteor sends data and lets the client render it. The server sends raw data through the DDP (Distributed Data Protocol) protocol, and the client decides how to display it.Database Everywhere
Access your database from both client and server using the same API. Minimongo, Meteor’s client-side database, mirrors the MongoDB API and automatically syncs with the server.Latency Compensation
Meteor simulates database operations on the client (optimistic UI) before the server responds. When the server result arrives, the client seamlessly reconciles any differences.Reactivity
Meteor’s reactivity system (powered by Tracker) automatically updates your UI when data changes. No manual event handlers or callback wiring required.Architecture Components
Meteor’s architecture consists of several interconnected systems:The Meteor Tool
Themeteor command-line tool (meteor-tool) is the entry point for all Meteor development:
- CLI commands: Located in
tools/cli/commands.js - Build system: Powered by Isobuild in
tools/isobuild/ - Development server: Hot reloading and live updates
- Package management: Integration with Atmosphere and npm
Package System
Meteor includes over 140+ core packages organized by domain:Database
mongo, minimongo, ddp-server, ddp-clientBuild Tools
babel-compiler, ecmascript, typescript, rspackAuthentication
accounts-base, accounts-password, accounts-oauthReactivity
tracker, reactive-var, reactive-dictRuntime Environment
Meteor provides a unified runtime environment across platforms:- Server: Node.js environment with full access to npm packages
- Client: Modern browsers with ES2015+ support via Babel
- Mobile: Cordova integration for iOS and Android
- Desktop: Electron support for cross-platform desktop apps
Development Workflow
1. Project Structure
A typical Meteor app follows this structure:2. Build Process
The Meteor build process (handled by Isobuild) follows these steps:- Project Context: Resolves package versions and dependencies
- Compilation: Compiles packages and app code for each target
- Linking: Wraps modules and sets up imports/exports
- Bundling: Combines everything into deployable bundles
- Output: Generates
star.jsonand platform-specific programs
3. Hot Module Replacement
Meteor supports fast refresh for React and automatic reloading:- react-fast-refresh: Preserves component state during updates
- autoupdate: Pushes new code to connected clients
- reload: Manages client-side reloading strategy
Modern Features
Meteor 3.x introduces several modern improvements:- Async/Await: Full Promise support throughout the stack
- ESM Modules: Native ES module support
- TypeScript: First-class TypeScript integration
- Modern Bundlers: Rspack for faster builds
- React 18: Support for latest React features
Next Steps
Project Structure
Learn how Meteor organizes files and directories
Package System
Understand Meteor’s modular package architecture
Isobuild
Deep dive into Meteor’s build system
Reactivity
Master Tracker and reactive programming