Files
videoreg.ru/README.md
T
huncode df60a7b74c
Master Production Deploy / production (push) Failing after 7m51s
Init repo
2026-05-16 23:51:49 +03:00

1.1 KiB

videoreg.ru

Small Next.js video registry using TypeScript, App Router, FSD-oriented folders, and a primitive file-backed JSON database.

Local development

npm install
npm run dev

The app runs on http://localhost:3000.

Data storage

By default records are stored in data/videoreg.json. Override the path with:

VIDEOREG_DB_FILE=/absolute/path/videoreg.json npm run dev

Reads are intentionally cached aggressively:

  • process memory cache for the primitive JSON database;
  • Next.js cache tag for dashboard/API reads;
  • long HTTP cache headers on the read API.

Writes call revalidateTag and update the process cache.

Deployment

Gitea Actions runs:

  • .gitea/workflows/pr.yml: quality gate for pull requests into master;
  • .gitea/workflows/master.yml: quality gate, image build, push, and direct Swarm deploy from master.

The Swarm stack defaults to one replica on a manager node because the primitive database is a mounted JSON file. Use a real database before raising replicas above one or spreading the service across nodes.