Axum-based multi-tenant notification and reminder service (open-source core).
- Full module structure (routes, handlers, services, providers, workers, db, utils)
- Health + ready endpoints
- Messages/templates/logs/webhook routes
- Postgres + Redis via Docker Compose
- Initial SQL migration
- Mock provider trait setup
- Copy env:
cp .env.example .env
- Start infra:
docker compose up -d
- Run app:
cargo run
GET /healthGET /readyPOST /messages/sendPOST /messages/scheduleGET /messages/:id/statusPOST /webhooks/providerPOST /templatesGET /templatesGET /templates/:idPATCH /templates/:idDELETE /templates/:idGET /logs/messagesGET /logs/messages/:id/events
- API key middleware
- SQLx inserts/queries for messages/templates
- Redis enqueue + sender worker
- Webhook signature validation + status updates