GuidesDeployment

Deployment

All four Neko Singa repos deploy automatically to Vercel on every push to main.

Overview

RepoVercel ProjectLive URL
webnekosinga-webnekosinga.vercel.app
appnekosinga-appapp-nekosinga.vercel.app
apinekosinga-apiapi-nekosinga.vercel.app
docsnekosinga-docsdocs-nekosinga.vercel.app

Deploy a Repo to Vercel

  1. Push the repo to GitHub
  2. Go to vercel.com/new
  3. Import the GitHub repo
  4. Set environment variables (see below)
  5. Deploy

Vercel auto-detects Next.js and sets the build command to next build.

Environment Variables

Set these in the Vercel project settings under Settings → Environment Variables.

api

VariableDescription
ELFA_API_KEYElfa API key from elfa.ai
DATABASE_URLNeon Postgres connection string
UPSTASH_REDIS_REST_URLUpstash Redis REST URL
UPSTASH_REDIS_REST_TOKENUpstash Redis REST token
JWT_SECRETSecret for signing JWT tokens

app

VariableDescription
NEXT_PUBLIC_API_URLFull URL of the deployed api, e.g. https://api-nekosinga.vercel.app

Vercel Serverless Constraints

Vercel functions are stateless and ephemeral — they spin up per request and shut down after. This means:

  • No persistent in-memory state between requests
  • BullMQ / RabbitMQ are incompatible (require a persistent listener process)
  • Upstash QStash is used instead — HTTP-based, no persistent connection needed

See Decisions → Scope Notes for full rationale.