standard-pkg
v0.6.0
Published
<p align="center"> <img alt="Logo" src="https://i.imgur.com/MsQMjew.png" width="420"> </p>
Downloads
23,522
Readme
- 🗓 Updates yearly with the latest ECMAScript spec.
- ⚡️ Powered by Babel; Automatically includes any custom/experimental plugins found in your babel config.
- 📦 Used internally by most @pika/pack build pipelines.
$ npm install -g standard-pkg
$ standard-pkg --src src/ --dist lib/
» Building src/ → lib/...
» Linting lib/...
✓ 0 issues found.
Why?
Lint Your Package to Strict ES2019 Spec
$ standard-pkg --dist lib/
» Linting lib/...
⚠️ [lib/index.js 2:0] Imported file does not exist.
Missing file extension for import "./some/import".
✘ 1 issues found.
Publish Modern JavaScript With Your Package
{
"scripts": {"build": "standard-pkg --src src/ --lib lib/"},
"esnext": "lib/index.js"
}
Use Existing Tools with Experimental Language Features
Standard-pkg builds to a standard language target for other tooling to consume (or to publish directly with your package). This is especially useful if you're using TypeScript or experimental language features that your tooling may not support.
Exceptions
While we try to match the ES2019 spec as strictly as possible, the following exceptions are required to support some common use-cases where no other workaround exists:
- Supports bare module specifiers: This is the npm standard, and modern tooling like bundlers support it.
- Supports dynamic
import()
: This is a stage 4 proposal which allows dynamically importing modules. - Supports
import.meta.url
: This is a stage 3 proposal which allows modules to read their location (filepath or URL).