🚀 Launch production-grade TypeScript libraries in minutes.
@boostpack/create-library hands you a curated toolchain behind a
single CLI you can extend, scaffold with, and eject from the moment you want full control.
- 📦 Batteries included Rollup, Jest, ESLint, and Prettier configs.
- 🔁 Flexible CLI (
create-library) with pass-through args. - 🧩 Extend or override commands from your project config.
- 🛠️
@boostpack/create-libraryscaffolds a ready-to-publish library starter. - 🧱 GitHub/GitLab CI templates ride along and stay updatable.
- 🧳
ejectcopies all configs for full control when you need it.
Create a brand-new library with a single command:
npm init @boostpack/library
# or
npx @boostpack/create-library| Command | Description |
|---|---|
create-library build [options] -- [rollup args] |
Type-check with TypeScript and bundle with Rollup. --watch, --no-clean, --rollup-config, --tsconfig. |
create-library test [options] -- [jest args] |
Run Jest tests with watch, coverage, CI reporters, and custom config support. |
create-library lint [options] -- [eslint args] |
ESLint with optional --fix, --config, and `--ci <github |
create-library format [options] -- [prettier args] |
Format (or --check) using Prettier. Default pattern: src/**/*.{ts,tsx,js,jsx,json,md}. |
create-library eject [options] |
Copy base configs (rollup, jest, eslint, tsconfig.*) into your project. Supports --force, --dry-run, --skip-install. |
npm init @boostpack/library <directory> [options]npx @boostpack/create-library <directory> [options] |
Scaffold a new library project. Options: --name, --template, --package-manager, --skip-install, --force, `--ci <github |
The CLI supports native pass-through. Example:
create-library lint -- --ext .ts,.tsx src
create-library test -- --runInBand --findRelatedTests src/index.tsRun create-library eject to copy the maintained configs into your repository:
eslint.config.jsjest.config.jsrollup.config.mjstsconfig.build.jsontsconfig.test.json
--dry-run previews the changes, --force overwrites conflicts, and --skip-install prevents the follow-up npm install.
After ejecting you own the configs—future package updates stop modifying them automatically.