Polymorphic development platform. To start read guide.
Primate is a frontend and backend-agnostic tool, allowing you to seamlessly integrate and start coding within any major frontend framework and several backend languages, eliminating the constraints of being tied to specific options like Next, Nuxt, or others. Primate runs on Node, Deno and Bun with the same codebase.
- Go
- JavaScript
- Python
- Ruby
- TypeScript
- Angular
- Eta
- Handlebars
- HTML
- HTMX
- Markdown
- Marko
- React
- Solid
- Svelte
- Voby
- Vue
- Web Components
- MongoDB
- MySQL
- Postgresql
- SQLite
- SurrealDB
Package | Description |
---|---|
primate | Primate framework |
@primate/core | Core framework |
@primate/go | Go backend |
@primate/python | Python backend |
@primate/ruby | Ruby backend |
@primate/typescript | TypeScript backend |
@primate/angular | Angular frontend |
@primate/eta | Eta frontend |
@primate/handlebars | Handlebars frontend |
@primate/html | HTML frontend |
@primate/htmx | HTMX frontend |
@primate/markdown | Markdown frontend |
@primate/marko | Marko frontend |
@primate/react | React frontend |
@primate/solid | Solid frontend |
@primate/svelte | Svelte frontend |
@primate/voby | Voby frontend |
@primate/vue | Vue frontend |
@primate/webc | Web Components frontend |
@primate/store | Databases |
@primate/mongodb | MongoDB database |
@primate/mysql | MySQL database |
@primate/postgresql | PostgreSQL database |
@primate/sqlite | SQLite database |
@primate/surrealdb | SurrealDB database |
@primate/types | Schema validation |
@primate/session | User sessions |
@primate/i18n | Internationalization |
@primate/native | Compile native apps |
website | Primate website |
create-primate | GUI for creating Primate apps |
Feature | Next | Nuxt | SvelteKit | Primate |
---|---|---|---|---|
Backend | JS, TS | JS, TS | JS, TS | JS, TS, Go, Python, Ruby |
Frontend | React | Vue | Svelte | React, Vue, Svelte, Solid, Angular, HTMX, Handlebars, WC |
Runtime | Node | Node | Node | Node, Deno, Bun |
I18N | ✓ | ✓ | ✗ | @primate/i18n |
Head Component | ✓ | ✓ | ✗ | React, Svelte, Solid |
Route guards | ✗ | ✗ | ✗ | ✓ |
Recursive layouts | ✓ | ✓ | ✓ | ✓ |
Data stores/ORM | ✗ | ✗ | ✗ | MongoDB, MySQL, PostgreSQL, SQLite, SurrealDb |
WebSockets | ✗ | ✗ | ✗ | ✓ |
Server-sent events | ✗ | ✗ | ✗ | ✓ |
User sessions | ✗ | ✓ | ✗ | @primate/session |
- Website: https://primatejs.com
- Discord: https://discord.gg/RSg4NNwM4f
- Reddit: r/primatejs
- Twitter (X): @primatejs
- Blog: https://primatejs.com/blog
- StackOverflow: https://stackoverflow.com/questions/tagged/primate
- Demo app: https://github.com/primatejs/app
MIT
By contributing to Primate, you agree that your contributions will be licensed under its MIT license.
Clone this repo and https://github.com/primatejs/app in the same location,
and switch to the dev
branch in the app repo. Then, in the app repo, run
npm run node
for Node in development modenpm run node:prod
for Node in production modenpm run deno
for Deno in development modenpm run deno:prod
for Deno in production modenpm run bun
for Bun in development modenpm run bun:prod
for Bun in production modenpm run bun:compile
for compiling desktop app with Bun