Skip to main content

Backend Serverless

Overview

backend-serverless/ is a separate codebase (not a build target of backend/) adapted for Vercel's serverless runtime.

Key Differences

Componentbackend/backend-serverless/
Databasebetter-sqlite3 (sync)@libsql/client (async, Turso)
DB helpergetDatabase() → sync DatabasegetDb() → async DbHelper
Storagefs (filesystem)@vercel/blob
SigningFilesystem keypairSIGNING_PRIVATE_KEY_B64 env vars
Entry pointserver.ts (Express listen)app.ts (export) + api/index.ts
SchedulingsetIntervalVercel Crons → cron.routes.ts
Test libraryRuntime git syncBuild-time clone
Build systemGo cross-compilationStubbed (returns 503)
Cert generationOpenSSL CLInode-forge (pure JS)

Important

Changes to backend/ do not propagate to backend-serverless/. If modifying shared logic (types, API contracts, ES mappings), update both codebases.