Skip to Content
Welcome

Welcome to Unforgett backend docs

This site explains Unforgett’s backend (hono-backend) in plain language — like you’re learning it for the first time.

What is hono-backend?

Imagine a restaurant:

Real worldIn our project
Customer at a tableApp (web, admin, Flutter, Chrome extension)
Waiter taking ordersHTTP request (GET, POST, …)
Kitchen rules (“no refunds after 2 hours”)Business logic in services/
Pantry / fridgeMongoDB database
Recipe cards on the wallModels in models/
Front door + host standindex.ts — first file every request hits

hono-backend is the kitchen + host. Apps only ask and show answers. The server decides what is allowed and stores the truth.

Who should read this?

  • New engineers joining Unforgett
  • Frontend or mobile devs who want to know what the API really does
  • You, future-you, when you forgot where SRS scheduling lives

How to use these docs

  1. Start with Getting started if terms like JWT, route, or Mongoose feel fuzzy.
  2. Read Architecture for the big picture.
  3. Dive into a folder: Routes, Models, Services.
  4. Use Every file (A–Z) when you know a filename but not what it does.

Run the backend locally

cd hono-backend cp .env.example .env # if you have an example; fill secrets npm install npm run dev

Server default: http://localhost:3000
Health check: GET /health{ "status": "ok" }

Run these docs locally

cd hono-backend-docs npm install npm run dev

Open the URL printed in the terminal (usually http://localhost:3000 — if port clashes, Next.js picks another).

Golden rule (architecture)

hono-backend is the single source of truth.
Validation, permissions, SRS, progress, and invariants live here.
Unforgett frontends (vite-frontend, admin-frontend, unforgett-app) call the same HTTP APIs and only handle UX.

When you add a feature: backend first, then wire clients to the same paths and JSON shapes.

Last updated on