Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/primatejs/primate

Web framework focused on flexibility and developer freedom
https://github.com/primatejs/primate

angular bun deno eta go handlebars htmx javascript marko node python react ruby solid svelte typescript voby vue web-components

Last synced: 3 days ago
JSON representation

Web framework focused on flexibility and developer freedom

Awesome Lists containing this project

README

        


Primate

Primate



 
 



Primate is a framework for building web applications primarily focused on
flexibility and developer freedom.


Other frameworks lock you in. Primate sets you free, offering you unlimited
choice in mixing and matching different tools that work best for you, rather
than forcing to you accept the limitations and design decisions made by others.

## What is supported?

Click on the tool badge for more info. If you're missing anything, feel free to
open an issue detailing your use case and what tool you would like to see
supported.

### Backends
[![Go](https://img.shields.io/badge/Go-02add6?logo=go&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/go)
[![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?logo=javascript&logoColor=000&style=for-the-badge)](https://primatejs.com/modules/backend)
[![Python](https://img.shields.io/badge/Python-3776AB?logo=python&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/python)
[![Ruby](https://img.shields.io/badge/Ruby-CC342D?logo=ruby&style=for-the-badge)](https://primatejs.com/modules/ruby)
[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/typescript)

### Frontends
[![Angular](https://img.shields.io/badge/Angular-DD0031.svg?logo=angular&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/angular)
[![Eta](https://img.shields.io/badge/Eta-25c2a0.svg?logo=eta&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/eta)
[![Handlebars](https://img.shields.io/badge/Handlebars-f0772b.svg?logo=handlebars.js&logoColor=fff&textColor=000&style=for-the-badge)](https://primatejs.com/modules/handlebars)
[![HTML](https://img.shields.io/badge/HTML-E34F26.svg?logo=html5&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/html)
[![HTMX](https://img.shields.io/badge/HTMX-36C?logo=htmx&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/htmx)
[![Markdown](https://img.shields.io/badge/Markdown-000000.svg?logo=markdown&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/markdown)
[![Marko](https://img.shields.io/badge/Marko-2596BE.svg?logo=marko&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/marko)
[![React](https://img.shields.io/badge/React-20232a.svg?logo=react&logoColor=%2361DAFB&style=for-the-badge)](https://primatejs.com/modules/react)
[![Solid](https://img.shields.io/badge/Solid-2C4F7C?logo=solid&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/solid)
[![Svelte](https://img.shields.io/badge/Svelte-f1413d.svg?logo=svelte&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/svelte)
[![Voby](https://img.shields.io/badge/Voby-fff5db.svg?logo=eta&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/voby)
[![Vue](https://img.shields.io/badge/Vue-4FC08D?logo=vuedotjs&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/vue)
[![web Components](https://img.shields.io/badge/Web%20Components-29ABE2?logo=webcomponentsdotorg&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/web-components)

### Runtimes
[![NodeJS](https://img.shields.io/badge/Node-6DA55F?logo=node.js&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/runtime-support)
[![Deno](https://img.shields.io/badge/Deno-000?logo=deno&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/runtime-support)
[![Bun](https://img.shields.io/badge/Bun-000?logo=bun&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/runtime-support)

### Databases
[![MongoDB](https://img.shields.io/badge/MongoDB-4ea94b.svg?logo=mongodb&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/drivers#mongodb)
[![MySQL](https://img.shields.io/badge/MySQL-4479A1?logo=mysql&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/drivers#mysql)
[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-316192.svg?logo=postgresql&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/drivers#postgresql)
[![SQLite](https://img.shields.io/badge/SQLite-07405e.svg?logo=sqlite&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/drivers#postgresql)
[![SurrealDB](https://img.shields.io/badge/SurrealDB-FF00A0.svg?logo=surrealdb&logoColor=fff&style=for-the-badge)](https://primatejs.com/modules/drivers#surrealdb)

## License

MIT

## Contributing

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 mode
* `npm run node:prod` for Node in production mode
* `npm run deno` for Deno in development mode
* `npm run deno:prod` for Deno in production mode
* `npm run bun` for Bun in development mode
* `npm run bun:prod` for Bun in production mode
* `npm run bun:compile` for compiling desktop app with Bun

[read guide]: https://primatejs.com/guide/getting-started