Files
face-lock/README.md

52 lines
1017 B
Markdown

# 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
```bash
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
```bash
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`.