VitNode is a plugin-first framework for community applications. It combines a TanStack Start front end, Hono API, Postgres, and AdminCP so features can ship as installable plugins instead of becoming permanent residents of one giant app.
Note
This is the VitNode 2.0 canary branch. It is actively developed, so use the
docs and source together while it keeps getting sharper.
You need Node.js 22+ and Postgres (or Docker). Create an app with the package manager you use every day:
bun create vitnode-app@canarypnpm create vitnode-app@canarynpm create vitnode-app@canaryWhen prompted, choose Turborepo if you plan to build plugins. VitNode puts product pages, APIs, data, translations, and AdminCP extensions in plugins first.
Start local services, migrate, and run the app:
bun run docker:dev
bun run db:migrate
bun devpnpm docker:dev
pnpm db:migrate
pnpm devnpm run docker:dev
npm run db:migrate
npm run devOpen http://localhost:3000, then sign in at /admin.
- Create a plugin.
- Give it a route, API module, data model, or AdminCP screen.
- Register the package in the host app’s configuration.
- Deploy from the Start here documentation.
The host app owns composition and global infrastructure. The plugin owns the feature. That boundary pays rent surprisingly quickly.
- Getting started
- Build your first plugin
- Plugin routes
- Admin Control Panel
- Content delivery and SEO
- Write documentation
- Plugin architecture with TanStack Start routes and typed Hono API modules
- Postgres data models, migrations, search, uploads, and content delivery
- Built-in authentication, roles, staff permissions, i18n, and AdminCP
- Self-hosted and cloud deployment guidance
MIT License