Meteor JavaScript framework moves to NPM
The change begins this week with the release of Meteor 1.3, which supports a module system that integrates with Node.js and NPM to enable better testing. The full switch to NPM will happen later in 2016, along with decoupling of some core packages.
“Decoupling of core packages means making it easier for the community to contribute to core packages by moving them into separate Git repositories. This changes the concept of a traditional 'Meteor Release’ so that it’s possible to mix and match core packages from different authors,” Meteor co-founder Matt DeBergalis said. This is part of the plan to position Meteor as a fully integrated, full-stack JavaScript platform.
For version 1.3, the modules help with testing. “Unit testing is more effective when your code is divided into clear units, and that’s one reason why Meteor 1.3 supports a standards-compliant module system,” said Zoltan Olah, head of customer success at Meteor. The NPM integration enables developers to install client and server packages into applications, including React and Angular components.
As a major release, Meteor 1.3 will help teams with production applications to manage, scale, and test Meteor code bases. New testing capabilities eliminate a need to break up an application into multiple local packages for testing.
The upgrade improves JavaScript specification support. “This includes full support for the latest ES2015 language features, as well as out-of-the-box NPM integration,” DeBergalis said. The framework supports the specification’s import and export syntax. Also, source maps are built automatically for developing and debugging in ES2015.
Meteor 1.3 improves performance for app rebuilds and some minimongo package update queries. Minimongo is a package reimplementing most of the MongoDB API against an in-memory JavaScript database. A rewritten Cordova layer, meanwhile, is for building iOS and Android applications. The Cordova capability has been upgraded to the latest versions, including 6.0.0, Cordova iOS 4.1.0, and Android 5.1.1.
Also planned for a future release of Meteor are updates for Node, to version 4, and MongoDB, to version 3.2. Additionally, Meteor’s Livedata system now supports tunable queries to help scale large apps.
Meteor is publishing an up-to-date Meteor Guide with the release, featuring best practices.