arcanesync-server/README.md

961 B

arcanesync

cloud sync backend for the arcanegram telegram client fork. node 24 + hono + drizzle + postgres. validates telegram mini app initData per request.

quick start

cp .env.example .env
# fill BOT_TOKEN with your bot's token
docker compose up -d postgres
pnpm install
pnpm db:migrate
pnpm dev

endpoints

  • GET /health — liveness
  • GET /miniapp — telegram mini app stub (registered with botfather)
  • GET /sync — auth: Authorization: tma <initData>. returns {version, data}.
  • PUT /sync — auth as above. body {baseVersion, patch}. returns 200 {version,data} or 409 {version,data}.

env

var default meaning
PORT 3000 http port
DATABASE_URL required postgres dsn
BOT_TOKEN required telegram bot token (mini-app-enabled)
AUTH_DATE_MAX_AGE_SECONDS 86400 initData freshness window
MAX_PAYLOAD_BYTES 65536 per-PUT payload cap