Quickstart

Run the month-1 skeleton locally and submit your first item.

1. Start with Docker Compose

git clone <your-repo> sieve && cd sieve
docker compose up --build

API: http://localhost:18765 · Admin: http://localhost:18766

Default admin: admin@sieve.local / admin123

2. Submit text

curl -X POST http://localhost:18765/v1/items \
  -H "X-API-Key: sieve-dev-api-key" \
  -H "Content-Type: application/json" \
  -d '{"type":"text","text":"please review sieve-review-demo"}'

3. Submit an image (URL)

curl -X POST http://localhost:18765/v1/items \
  -H "X-API-Key: sieve-dev-api-key" \
  -H "Content-Type: application/json" \
  -d '{"type":"image","image_url":"https://example.com/safe-demo.png"}'

4. Review in the admin console

Open the review queue, assign the task to yourself, then approve or reject with a reason. Decisions are written to the audit log.

Without Docker

cd apps/api && uv sync && uv run uvicorn sieve.main:app --host 0.0.0.0 --port 18765
cd apps/admin && npm install && npm run dev