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! ✉️ info@cellajs.com

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.

Create your own app

Want to use cella to build your next web app? We made it simple using a short create CLI:

pnpm create @cellajs/cella@latest

Follow the steps in create CLI and then run your app:

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 want to participate in development:

git clone git@github.com:cellajs/cella.git && cd cella

A. Quick setup

pnpm install && pnpm quick

B. Full setup

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.