Scaffolding tool for Rolldown projects
npm install create-rolldown
ā”ļø Scaffolding tool for Rolldown library projects - a fast JavaScript bundler written in Rust, with TypeScript support and multiple framework templates
[![npm version][npm-version-src]][npm-version-href]
[![npm downloads][npm-downloads-src]][npm-downloads-href]
[![bundle][bundle-src]][bundle-href]
[![License][license-src]][license-href]


- š Fast Setup - Create a new Rolldown project in seconds
- šØ TypeScript First - All templates use TypeScript by default
- š¦ Library Development Focus - Templates designed for building and publishing JavaScript/TypeScript libraries, component libraries, and utility packages
- š® Playground Included - Framework templates include a Vite-powered playground for development and testing
- š§ Interactive & Non-Interactive Modes - Flexible usage for both manual and automated workflows
- š¦ Smart Package Manager Detection - Automatically detects and uses your preferred package manager (npm, pnpm, yarn, bun)
- ā” Immediate Start - Optional flag to install dependencies and start playground immediately
``bash`
npm create rolldown@latestor
pnpm create rolldownor
yarn create rolldownor
bun create rolldown
Simply run the command and follow the prompts:
`bash`
npm create rolldown@latest
You'll be prompted to:
1. Enter a project name
2. Choose a framework (Vanilla, React, Vue, Solid, or Svelte)
3. Optionally install dependencies and start the playground immediately
For automated workflows or CI/CD pipelines:
`bashCreate a project with all options specified
npm create rolldown@latest my-lib -- --template react --no-interactive
Supported Templates
| Template | Description | Use Cases | Playground |
| --------- | -------------------------------- | ---------------------------------- | ---------- |
|
vanilla | Vanilla TypeScript library | Utility libraries, tools, helpers | ā |
| react | React library with TypeScript | React components, hooks, utilities | ā
Vite |
| vue | Vue 3 library with TypeScript | Vue components, composables | ā
Vite |
| solid | SolidJS library with TypeScript | Solid components, primitives | ā
Vite |
| svelte | Svelte 5 library with TypeScript | Svelte components, actions | ā
Vite |Command Line Options
`
Usage: create-rolldown [project-name] [options]Options:
-t, --template Specify a template (vanilla, react, vue, solid, svelte)
--overwrite Overwrite existing files in target directory
-i, --immediate Install dependencies and start playground immediately
--interactive Force interactive mode (default in TTY)
--no-interactive Force non-interactive mode (default in non-TTY)
-h, --help Display this help message
`How It Works
1. Parse CLI arguments using
mri`Contributions are welcome! Please feel free to submit a Pull Request.
- Rolldown - Fast JavaScript bundler written in Rust
- tsdown - TypeScript bundler built on Rolldown
- create-vite - Inspiration for this project
[npm-version-src]: https://img.shields.io/npm/v/create-rolldown?style=flat&colorA=080f12&colorB=1fa669
[npm-version-href]: https://npmjs.com/package/create-rolldown
[npm-downloads-src]: https://img.shields.io/npm/dm/create-rolldown?style=flat&colorA=080f12&colorB=1fa669
[npm-downloads-href]: https://npmjs.com/package/create-rolldown
[bundle-src]: https://img.shields.io/bundlephobia/minzip/create-rolldown?style=flat&colorA=080f12&colorB=1fa669&label=minzip
[bundle-href]: https://bundlephobia.com/result?p=create-rolldown
[license-src]: https://img.shields.io/github/license/Sunny-117/create-rolldown.svg?style=flat&colorA=080f12&colorB=1fa669
[license-href]: https://github.com/Sunny-117/create-rolldown/blob/main/LICENSE