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

https://github.com/cellajs/cella

Template to build web apps with sync engine using hono, pg, drizzle, electric-sync, react, shadcn.
https://github.com/cellajs/cella

drizzle hono openapi postgres react react-query shadcn tanstack-router vite zod zustand

Last synced: about 1 month ago
JSON representation

Template to build web apps with sync engine using hono, pg, drizzle, electric-sync, react, shadcn.

Awesome Lists containing this project

README

        





Cella



Single stack TypeScript template to build web apps with sync & offline capabilities.




Website
ยท
Prerelease
ยท
MIT license



> [!CAUTION]
> This is a prerelease. It does NOT meet production requirements yet and large breaking changes occur regularly. Versioned releases will begin once we have solid tests for authentication, authorization and data access. Want to contribute or discuss cella with us? Let's connect! โœ‰๏ธ

#### Contents
- [Installation](#installation)
- [Architecture](/info/ARCHITECTURE.md)
- [Roadmap](/info/ROADMAP.md)
- [Deployment](/info/DEPLOYMENT.md)

## Requirements
- Make sure you have node installed with `node -v`. Install Node 20.x or 22.x. (ie. [Volta](https://docs.volta.sh/guide/)).
- Ideally you work with [git over ssh](https://docs.github.com/en/authentication/connecting-to-github-with-ssh).


## Create your own app
Want to try cella to build your new web app? We made it simple with a create CLI. Simply follow the steps to get started:

```bash
pnpm create @cellajs/cella@latest
```

You now have an implementation-ready web app ๐Ÿคฏ. But ... without any unique functionality ๐Ÿค“. Read the [Quickstart](/info/QUICKSTART.md) so you can build something unique quickly.

ย 

## Installation
For those that (also) want to participate in development:

```bash
git clone [email protected]:cellajs/cella.git && cd cella
```

### A. Quick setup
Run your db using a local pglite. Its fast to build and to clean up. Simply remove `backend/.db`. However, you need to use the full setup to run electric-sync.

```bash
pnpm install && pnpm quick
```

### B. Full setup
For a full setup with sync capabilities, you need Docker. It will allow you to run Postgres + electric-sync. Install [Orbstack](https://orbstack.dev/) or [Docker](https://docs.docker.com/get-docker/).

```bash
pnpm install
pnpm docker
```

Start all servers:

```bash
pnpm dev
```

Lastly, [seed](/backend/scripts/README.md) your db (with `dev` running) to sign in as [admin user](/backend/scripts/README.md).

```bash
pnpm seed
```

Check it out at [localhost:3000](http://localhost:3000)! Generated API docs can be found at [localhost:4000/docs](http://localhost:4000/docs). Manage your local db with [local.drizzle.studio](http:local.drizzle.studio).




๐Ÿ’™๐Ÿ’› Big thank you to [drizzle](https://github.com/drizzle-team/drizzle-orm), [hono](https://github.com/honojs/hono), [tanstack-router](https://github.com/tanstack/router) & [electric](https://github.com/electric-sql/electric).