Luna 4d599e9882
Some checks failed
python / test (push) Failing after 3m54s
Add endpoint tests and Gitea workflow
2026-04-13 20:34:27 +02:00
2026-04-11 17:27:46 +02:00
2026-04-11 17:30:22 +02:00
2026-04-11 17:27:46 +02:00
2026-04-11 16:32:26 +02:00
2026-04-11 22:30:15 +02:00
2026-04-11 17:30:22 +02:00

face-lock

FastAPI microservice that finds the primary subject in an image, draws a square around it, and returns a buffered crop.

UI

The Tailwind test UI is available at / unless disabled with FACE_LOCK_TEST_UI=false.

Auth

Optional header auth is enabled when FACE_LOCK_AUTH_TOKEN is set.

  • Default header: X-API-Key
  • Alternate: Authorization: Bearer <token>
  • Override the header name with FACE_LOCK_AUTH_HEADER

API

  • POST /api/focus
  • POST /api/focus/image
  • GET /health

Detectors

  • face
  • animal
  • person
  • subject

Docs

  • OpenAPI UI: /docs
  • Project docs: docs/README.md

Run

cp .env.example .env
pip install -r requirements.txt
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Set FACE_LOCK_TEST_UI=false to disable the UI.

Docker

docker compose up --build

If you change env vars in .env, recreate the container, docker compose up -d --force-recreate, because restart alone will not reload --env-file.

Description
No description provided
Readme 64 KiB
Languages
Python 98.1%
Dockerfile 1.9%