Skip to content
/ cella Public

TypeScript template to build local-first SaaS with hono + pg + drizzle + electric-sql + react + shadcn.

License

Notifications You must be signed in to change notification settings

cellajs/cella

Repository files navigation


Cella

Single stack TypeScript template to build local-first SaaS.

Website · Prerelease · MIT license


Caution

Please be aware this is a prerelease. It does NOT meet production requirements yet and large breaking changes still occur regularly. An alpha version will be released once we have solid tests for at least authentication & authorization. Want to contribute or discuss cella for one of your projects? Let's connect! ✉️ [email protected]

Note

Due to a new - rewritten, refocused - version of ElectricSQL, we had to revert to basic API calls everywhere. We are now exploring ways to quickly get local-first back into cella.

Contents

Requirements

  • Make sure you have node installed with node -v. Install Node 20.x or 22.x. (ie. Volta).
  • Ideally you work with git over ssh.

Fork & build your app! (EXPERIMENTAL)

Want to use cella to build your next web app? Click the fork button. Then follow these steps in your project:

git remote add upstream [email protected]:cellajs/cella.git
git fetch upstream
git merge upstream/main

Then run your app:

pnpm install && pnpm quick

You now have an implementation-ready web app 🤯! But ... without any unique functionality 🤓. Read the Quickstart so you can build something unique quickly.

Installation

For those that simply want to try cella or participate in development:

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

A. Quick setup

pnpm install && pnpm quick

B. Full setup

Or, for a full setup - with Postgres instead of pglite - you need Docker. Install Orbstack or Docker.

pnpm install
pnpm docker

Start all servers:

pnpm dev

Lastly, seed your db (with dev running) to sign in as admin user.

pnpm seed

Check it out at localhost:3003! Generated API docs can be found at localhost:4004/docs. Manage your local db with local.drizzle.studio.



💙💛 Big thank you to drizzle, hono, tanstack-router & electric.