Skip to main content

codebase

Use when understanding the build system, modifying CLI commands, working with isobuild, or navigating the tools/ directory. Covers build pipeline flow and file locations.

Quellinformationen

Repository
meteor/meteor
Letzte Quellaktivität
6. Februar 2026 um 11:57
Erkannte Sprache von SKILL.md
Englisch
Sterne
44.793
Forks
5.248

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
codebase
description
Use when understanding the build system, modifying CLI commands, working with isobuild, or navigating the tools/ directory. Covers build pipeline flow and file locations.
# Codebase Meteor's build system (Isobuild) and CLI structure. ## Overview Meteor is a full-stack JavaScript platform with: - **Core packages** in `/packages` - **Build system (Isobuild)** in `/tools/isobuild` - **CLI tool** in `/tools/cli` - **Real-time data layer** via DDP - **Mobile support** via Cordova ## Build Pipeline 1. **CLI** (`tools/cli/main.js`) → parses commands 2. **Project Context** (`project-context.js`) → resolves packages, dependencies 3. **Isobuild** (`tools/isobuild/`) - Bundler (`bundler.js`) → orchestrates build - Compiler (`compiler.js`) → compiles packages - Linker (`linker.js`) → wraps modules - Build plugins (Babel, TypeScript, CSS) 4. **Output** → `star.json`, programs 5. **Runners** (`tools/runners/`) → run-app.js, run-mongo.js, run-hmr.js 6. **Live App** → DDP Server ↔ Minimongo ↔ UI ## Directory Structure ``` tools/ ├── cli/ # Command-line interface ├── isobuild/ # Build system core ├── packaging/ # Package management ├── runners/ # App execution engines ├── fs/ # File system utilities ├── cordova/ # Mobile/Cordova support ├── static-assets/ # Project templates └── project-context.js # Dependency resolution ``` ## CLI (`tools/cli/`) | File | Description | |------|-------------| | `main.js` | Entry point, command dispatcher | | `commands.js` | Main command implementations | | `commands-packages.js` | Package management commands | | `commands-cordova.js` | Cordova/mobile commands | **Commands:** `meteor create`, `run`, `build`, `deploy`, `add/remove`, `mongo`, `shell` ## Isobuild (`tools/isobuild/`) | File | Description | |------|-------------| | `bundler.js` | High-level bundling orchestration | | `compiler.js` | Package compilation | | `linker.js` | Module wrapping and linking | | `import-scanner.ts` | Import statement parsing | | `compiler-plugin.js` | Compiler plugin API | | `isopack.js` | Package format handling | ## Runners (`tools/runners/`) | File | Description | |------|-------------| | `run-app.js` | Web application runner | | `run-mongo.js` | MongoDB server runner | | `run-hmr.js` | Hot module reload runner | | `run-all.js` | Multi-runner orchestration | ## Build Targets | Target | Description | |--------|-------------| | `web.browser` | Modern browsers | | `web.browser.legacy` | Legacy browsers (IE11) | | `web.cordova` | Cordova mobile apps | | `server` | Node.js server | ## Package Relationships - `tools-core` → rspack, future integrations - `accounts-base` → all accounts-* packages - `ddp-server` + `ddp-client` → realtime communication - `mongo` → minimongo (client-side) - `webapp` → all HTTP handling ## Project Templates Via `meteor create --<template>`: `react`, `vue`, `svelte`, `angular`, `blaze`, `typescript`, `tailwind`, `solid`, `apollo`, `minimal`, `bare`, `full` ## Environment Variables | Variable | Purpose | |----------|---------| | `METEOR_PROFILE` | Build profiling | | `METEOR_PACKAGE_DIRS` | Additional package paths | | `METEOR_DEBUG_BUILD` | Verbose build output | ## Troubleshooting - **Package not found:** Check `package.js` name, run `meteor reset` - **Build plugin not running:** Check `archMatching`, file extensions - **npm issues:** Clear `.meteor/local/`, run `meteor npm install`
Auf GitHub ansehen