arrow_backDevelopers
dns

Run it yourself

Self-Hosting Keeplas

Keeplas is AGPL-3.0 and self-hostable. Run the whole stack on your own infrastructure -- your data, your servers, your rules. Here is the path from clone to running.

Requirements

You need a recent Node toolchain, pnpm, and a Convex deployment. Docker is optional for a containerized dev environment.

  • check_circleNode.js 20+ and pnpm 10+ (corepack enable recommended)
  • check_circleA Convex deployment -- Convex Cloud or self-hosted (CONVEX_MODE=selfhosted)
  • check_circleDocker (optional) for a pinned, containerized dev environment

One-command bootstrap

Clone the repo, then run the bootstrap. It copies your .env.local, installs dependencies, and links per-package env files.

terminal
$ git clone https://github.com/Keeplas/keeplas.git
$ cd keeplas
$ pnpm bootstrap

Provision Convex & secrets

Generate the audit HMAC secret, provision your Convex deployment, seed the auth keys, push your env, then boot the app.

terminal
$ openssl rand -base64 32   # set KEEPLAS_CTX_SECRET in .env.local
$ npx convex dev --once --configure=new
$ npx @convex-dev/auth          # seeds JWT keys
$ pnpm sync:convex-env
$ pnpm dev

Or use Docker

Prefer containers? The provided Dockerfile.dev pins Node and pnpm to match CI, with source bind-mounted for hot-reload.

terminal
$ cp .env.local.example .env.local   # then fill KEEPLAS_CTX_SECRET
$ docker compose up

Deploying to production

The reference deployment targets Vercel for the web app and Convex Cloud for the backend. Because the vault is zero-knowledge, your server only ever holds ciphertext -- self-hosting changes who operates the servers, not who can read your data. Only you can.

Get the code

Everything you need is in the open-source monorepo.