meteor
Meteor is a full-stack JavaScript platform for building reactive web and mobile applications, bundling a build system, an isomorphic client/server data layer with real-time syncing, and integration with frontend libraries like React, Vue, Blaze, and Svelte.
MITPermissive — free to use in commercial and proprietary software, with attribution.View license →
Production readiness
4/5- Actively maintainedCommits in the last 6 months
- No known vulnerabilities1 known OSV advisory
- Clear, usable licenseMIT (permissive)
- Proven adoptionWidely used
- Has documentationDocumentation indexed
npm install meteorOur analysis
Meteor is an opinionated full-stack JavaScript framework that ties together a build tool, a Node.js server, and a reactive client/server data protocol (DDP) so the same code and live data can flow seamlessly between browser, mobile, and server.
When to use meteor
Good for real-time collaborative apps (chat, dashboards, live updates) where you want reactive data syncing out of the box, rapid prototyping with minimal boilerplate, and the ability to ship web and Cordova-based mobile from one codebase using familiar JS.
When not to
If you need fine-grained control over your build pipeline, want a lightweight or modular stack, are building a primarily static/SEO-first site, or prefer a database other than MongoDB without friction, a more composable choice like Next.js plus a separate API/DB layer is usually a better fit.
Strengths
- End-to-end reactivity and real-time data sync require almost no manual wiring
- Integrated build system handles bundling, transpilation, and mobile builds
- Frontend-agnostic with adapters for React, Vue, Svelte, Blaze, and Solid
- Large mature ecosystem of Atmosphere packages and long track record
Trade-offs
- Historically tightly coupled to MongoDB and its own build toolchain, limiting flexibility
- DDP/pub-sub model can scale poorly under heavy connection counts without careful optimization
- Heavier and more opinionated than assembling a modern modular JS stack
- Mindshare has declined as Next.js and similar frameworks took over the full-stack space
Maturity
Very mature and battle-tested, around since 2012 with a large historical community; now stewarded commercially (Meteor Software / Tiny) with ongoing 3.x releases that modernized it onto async/await and newer Node versions, though overall momentum is lower than its peak.
Meteor API Documentation - http://docs.meteor.com
This is a hexo static site used to generate the Meteor API Docs.
Contributing
We'd love your contributions! Please send us Pull Requests or open issues on github. Also, read the contribution guidelines.
If you are making a larger contribution, you may need to run the site locally:
Running locally
Submodules
This repo has two submodules, one the theme, the other full Meteor repository.
We have the Meteor repo to generate the data.js file (see below).
After cloning, or updating the repo, it makes sense to run
git submodule update --init
Generally you should not commit changes to the submodules, unless you know what you are doing.
Generating data.js
To generate the api boxes, the site uses a file data/data.js which is generated from the js docs in the Meteor source code. This will automatically happen whenever you start your local hexo server.
Starting hexo
Ensure you've run npm install. Then simply npm start.
Developing with local meteor source
When developing jsdoc documentation within the meteor code you will need to make some local modifications to get the documentation to work locally for testing.
Modify
urlin_config.ymlso links withinlocalhost:4000will not jump out tohttps://docs.meteor.com
- url: http://docs.meteor.com/
+ url: http://localhost:4000/
reconnect the meteor submodule in
/codeto your local meteor folder.
# REMOVE submodule
# Remove the submodule entry from .git/config
git submodule deinit -f code
# Remove the submodule directory from the superproject's
# .git/modules directory
rm -rf .git/modules/code
# Remove the entry in .gitmodules and remove the submodule directory
# located at path/to/submodule
git rm -f code
# ADD your local meteor submodule
git submodule add /path/to/local/meteor code
Hexo builds if you are just changing md files in sources then hexo will watch for changes and update. If you are making changes in the
/codefolder then you will need tonpm run clean && npm start.
Of course, do not commit any of these changes.