https://github.com/chenxin-yan/crust
A TypeScript-first, Bun-native CLI framework with composable modules.
https://github.com/chenxin-yan/crust
bun bunjs cli framework javascript typescript
Last synced: 13 days ago
JSON representation
A TypeScript-first, Bun-native CLI framework with composable modules.
- Host: GitHub
- URL: https://github.com/chenxin-yan/crust
- Owner: chenxin-yan
- Created: 2026-02-12T01:39:39.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-02-27T09:07:46.000Z (28 days ago)
- Last Synced: 2026-02-27T12:59:38.321Z (27 days ago)
- Topics: bun, bunjs, cli, framework, javascript, typescript
- Language: TypeScript
- Homepage: https://crustjs.com/
- Size: 2.67 MB
- Stars: 14
- Watchers: 0
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
Crust
A TypeScript-first, Bun-native CLI framework with composable modules.
Documentation
•
Contributing
•
Issues
•
Discord
> [!WARNING]
> Crust is **beta-quality** until v1.0. Versions before 1.0 do not strictly follow semantic versioning. The core API should be relatively stable after 0.1, but expect breaking changes between minor releases.
## Packages
| Package | Description | Version | Downloads |
| ---------------------------------------------------------------------- | -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| [`@crustjs/crust`](https://www.npmjs.com/package/@crustjs/crust) | CLI tooling — build and distribute standalone executables | [](https://www.npmjs.com/package/@crustjs/crust) | [](https://www.npmjs.com/package/@crustjs/crust) |
| [`@crustjs/core`](https://www.npmjs.com/package/@crustjs/core) | Core: command definition, arg parsing, routing, plugins, errors | [](https://www.npmjs.com/package/@crustjs/core) | [](https://www.npmjs.com/package/@crustjs/core) |
| [`@crustjs/plugins`](https://www.npmjs.com/package/@crustjs/plugins) | Official plugins: help, version, autocomplete | [](https://www.npmjs.com/package/@crustjs/plugins) | [](https://www.npmjs.com/package/@crustjs/plugins) |
| [`@crustjs/style`](https://www.npmjs.com/package/@crustjs/style) | Terminal styling foundation | [](https://www.npmjs.com/package/@crustjs/style) | [](https://www.npmjs.com/package/@crustjs/style) |
| [`@crustjs/prompts`](https://www.npmjs.com/package/@crustjs/prompts) | Interactive terminal prompts | [](https://www.npmjs.com/package/@crustjs/prompts) | [](https://www.npmjs.com/package/@crustjs/prompts) |
| [`@crustjs/validate`](https://www.npmjs.com/package/@crustjs/validate) | Validation helpers | [](https://www.npmjs.com/package/@crustjs/validate) | [](https://www.npmjs.com/package/@crustjs/validate) |
| [`@crustjs/store`](https://www.npmjs.com/package/@crustjs/store) | DX-first, typed persistence for CLI apps with config/data/state/cache separation | [](https://www.npmjs.com/package/@crustjs/store) | [](https://www.npmjs.com/package/@crustjs/store) |
| [`@crustjs/skills`](https://www.npmjs.com/package/@crustjs/skills) | Agent skill generation from Crust command definitions | [](https://www.npmjs.com/package/@crustjs/skills) | [](https://www.npmjs.com/package/@crustjs/skills) |
| [`@crustjs/create`](https://www.npmjs.com/package/@crustjs/create) | Headless scaffolding engine for building create-xxx tools | [](https://www.npmjs.com/package/@crustjs/create) | [](https://www.npmjs.com/package/@crustjs/create) |
| [`create-crust`](https://www.npmjs.com/package/create-crust) | Project scaffolding tool | [](https://www.npmjs.com/package/create-crust) | [](https://www.npmjs.com/package/create-crust) |
## Getting Started
```sh
bun create crust my-cli
cd my-cli
bun run dev
```