autoayuno-api

Catálogo compartido de alimentos (alimentado de Open Food Facts bajo demanda) y recetas publicables para la app [autoayuno]. Sin cuentas: publicar es anónimo con un deviceToken. Lo personal del usuario vive en su dispositivo; aquí solo lo compartido.

Stack

FastAPI + SQLAlchemy + Postgres (SQLite como fallback en dev). Docker → Dokploy. Dominio: api-autoayuno.carlosnarro.com.

Endpoints

  • GET /health
  • GET /foods?q= — busca en la BD; si hay pocos, importa de Open Food Facts y guarda.
  • POST /foods — alta anónima de un alimento (source=user).
  • GET /recipes?q=, GET /recipes/{id}, POST /recipes — recetas públicas.

Las respuestas usan la forma que espera la app (kcalPer100g, zone, portions, origin).

Desarrollo

pip install -r requirements.txt
uvicorn main:app --reload          # SQLite local por defecto
pytest                             # tests con SQLite en memoria

Producción (Dokploy)

Variable DATABASE_URL con el Postgres. Build por Dockerfile, puerto 8000.

Description
Backend de autoayuno: cat�logo de alimentos (Open Food Facts) y recetas
Readme 78 KiB
Languages
Python 99.3%
Dockerfile 0.7%