Go to file
Serafim Sukharev 22c2a4da69 feat(auth): render UI only for authenticated users 2025-01-30 14:40:04 +03:00
backend init 2025-01-24 15:19:25 +03:00
frontend feat(auth): render UI only for authenticated users 2025-01-30 14:40:04 +03:00
keycloak feat(auth): registration 2025-01-29 16:24:22 +03:00
nginx feat: authorization 2025-01-28 19:11:37 +03:00
.env feat: authorization 2025-01-28 19:11:37 +03:00
.gitignore feat: authorization 2025-01-28 19:11:37 +03:00
README.md feat(createRecord): interface 2025-01-29 14:57:12 +03:00
compose.yml feat(createRecord): interface 2025-01-29 14:57:12 +03:00

README.md

App for counting calories

Stack:

  • Keycloak
  • React (TypeScript)
  • FastAPI
  • Elasticsearch
  • Supserset

Features:

  • Authorization
  • Saving records with absorbed calories (description (optional), at least one of: cals per gram, grams, cals)
  • Editing records (including date)
  • Display records in cronological order with pagination
  • Search by records description
  • Watch stats in superset (calories chart)
  • Docker compose

API docs:

Authorization: Bearer

Record { id: int owner: string description: string weight: number calories: number calspergram: number date: datetime }

GET /records?offset=0&amount=5&query="" [ { date: string records: Record[] }[5] ]

POST /records { description: string weight: number calories: number calspergram: number } -> Record

UPDATE /records/:id { description?: string weight?: number calories?: number calspergram?: number date?: datetime } -> Record