To learn about features, setup, contribution and more, visit docs.
The buttons above clone the latest default branch into your own Git account and wire it up for continuous deploys on Cloudflare, Vercel, or Netlify. The repository must be public. No secrets are embedded in the repo or the link — you are prompted for the environment variables below at deploy time.
Required:
DATABASE_URL- a PostgreSQL connection string (Neon, Supabase, RDS, ...)AUTH_SECRET- a random secret:openssl rand -base64 32
Optional (defaults shown):
AUTH_SESSION_MAX_AGE- session lifetime in seconds (default86400)SEED_USER_NAME,SEED_USER_EMAIL,SEED_USER_PASSWORD- pre-provisions an admin user. Without these you cannot sign in, so set them at deploy time.ALGOLIA_APP_ID,ALGOLIA_SEARCH_API_KEY,ALGOLIA_ADMIN_API_KEY,ALGOLIA_INDEX_NAME- global search. Search gracefully degrades when unset; indexing runs vianpm run index:algolia.
Every build runs npm run db:setup, which automatically:
- applies all committed Prisma migrations (
prisma migrate deploy), - seeds the admin user from
SEED_USER_*(idempotent — existing users are left untouched), - ensures a default company profile row exists.
It is safe to run on every deploy. A database is required: if it is unreachable or migration/seeding fails, the build fails loudly, so a broken deployment is never shipped.
GNU Affero General Public License v3.0
Bundled third-party code-
vendor/taepdf—> MIT License (browser HTML-to-PDF engine)
Cloud Invoice will never advertise inside your invoices.