babel-plugin-meteor-imports

raw JSON →
1.0.3 verified Sat Apr 25 auth: no javascript

A Babel plugin that enables importing from Meteor packages (e.g., 'meteor/check') in code not processed by isobuild, such as custom server-side scripts or build tools. It transforms ES module import statements into assignments from the global Package namespace (Package['meteor']['check']). Version 1.0.3 is the latest stable release; the project has a low release cadence. Unlike direct usage of require('meteor/check'), this plugin integrates with Babel's transformation pipeline, supporting destructuring and named exports. It assumes Meteor's boot.js has been loaded to populate the Package global, making it suitable for server-side tooling or testing environments outside the Meteor build system.

error Package is not defined
cause Meteor's boot.js not loaded before code execution
fix
Add: require('<path-to-meteor-project>/.meteor/local/build/programs/server/boot.js');
error Cannot find module 'babel-plugin-meteor-imports'
cause Plugin not installed or not in node_modules
fix
Run: npm install --save-dev babel-plugin-meteor-imports
gotcha Requires Meteor's boot.js to be loaded before any transformed imports; otherwise Package is undefined.
fix Ensure boot.js from .meteor/local/build/programs/server is required before your code.
deprecated Assumes Babel 6 or 7; not tested with Babel 8.
fix Stay on Babel 6/7 or verify compatibility manually.
npm install babel-plugin-meteor-imports
yarn add babel-plugin-meteor-imports
pnpm add babel-plugin-meteor-imports

Shows how to install, configure, and use the plugin to transform Meteor import statements into Package globals.

// Install: npm install --save-dev babel-plugin-meteor-imports
// In your .babelrc or babel.config.js:
{
  "plugins": ["babel-plugin-meteor-imports"]
}
// Now you can import Meteor packages:
import { Meteor } from 'meteor/meteor';
import { check, Match } from 'meteor/check';
// Transforms to:
const { Meteor } = Package['meteor']['meteor'];
const { check, Match } = Package['meteor']['check'];