尚未检测到更新。GitHub 发布版本后会显示在这里。
Bunyad: a TypeScript web framework for Bun and Node, with an active-record ORM.
翻译准备中
正在加载完整 README。
查看完整 README ↗A TypeScript-first web framework for Bun, compiled for speed.
Bunyad gives you controllers, middleware, active-record models, views, queues, mail, validation and a command-line tool in one coherent stack, running on Bun. A build-time compiler turns routes, views, the service container and middleware pipelines into plain optimized JavaScript, so a production app boots from compiled code instead of scanning the file system.
It is inspired by Laravel's developer experience. It does not copy Laravel's folder structure, and it is not a PHP-to-Bun translation: Bunyad is its own framework with its own names, written for TypeScript.
Website and docs: bunyadjs.com · Documentation · npm · GitHub
Beta. The current release is
0.2.0-beta.4, published under thebetanpm tag.lateststill points at the old0.1.0-alpha.0and will not move until 1.0, so install with@beta. Public APIs change only in minor releases, with a changelog entry and an upgrade note: see the stability policy, the changelog and the upgrade guide.
Install Bun 1.4 or newer, then create an app:
bun create bunyad@beta my-app
cd my-app
bun run dev
You are asked for a starter kit (Views, Live, React, Vue or Svelte with Inertia, or API), a database (SQLite, PostgreSQL or MySQL), and whether to install dependencies and start a git repository. Or install the CLI once with bun add -g @bunyad/cli and run bunyad new.
The installation guide covers the options.
Using only the database or ORM layer, in a Node or Bun project that isn't a Bunyad app? Install @bunyad/orm and @bunyad/database, see Using the ORM outside Bunyad.
Your TypeScript app
↓
Bunyad compiler
↓
Compiled code on Bun
bunyad compile → .build/ (routes, views, container, middleware, manifest)
bunyad start → loads only compiled code
Every capability is a standalone @bunyad/* package, and @bunyad/framework brings them together:
| Area | Packages |
|---|---|
| Web | http, router, validation, view, inertia, live, session, auth, oauth |
| Data | database, orm, migrate, cache |
| Background work | queue, schedule, events, broadcasting, notifications, mail |
| Platform | core, container, config, compiler, cli, log, console, head, metrics, features, permissions, filesystem, image, search, billing, testing |
contracts, common, database and orm also run on Node.js 20+. Everything else is Bun-only.
bunyad/
├── apps/ # Playground, docs site, benchmark
├── packages/ # @bunyad/* packages
├── docs/ # Stability policy and runnable examples (Express, Next.js)
├── api/ # Recorded public exports of every package
├── benchmarks/
├── templates/ # Starter kits (api, views, live, react, vue, svelte, saas, package)
├── tools/ # Internal generators and build utilities
└── scripts/ # Release, smoke-test and API-snapshot tooling
| Document | Purpose |
|---|---|
| bunyadjs.com | Installation, guides and package references |
| docs/STABILITY.md | Versions, stability and the beta promise |
| CHANGELOG.md | What changed in each release |
| docs/UPGRADING.md | Steps for moving between releases |
| CONTRIBUTING.md | How to contribute |
| SECURITY.md | How to report a vulnerability |
bunyad command-line tool.BUNYAD_COMPILED=1) skips Glob and readdir.@bunyad/* packages that compose into the framework.bun create bunyad@beta my-app # new app
bun add @bunyad/orm@beta # a single package
To work on the framework itself:
bun install
bun run serve # playground app
bun run typecheck
bun test packages scripts
See CONTRIBUTING.md.
MIT