Auth & companion UI
Schemes
| Scheme | Header |
|---|---|
| API key | X-Api-Key: {key} |
| JWT | Authorization: Bearer {token} |
Send endpoints require role Admin or Sender.
Bootstrap: anonymous /api/v1/setup/* only while no admin exists. Keep JWT signing keys strong (32+ chars) and secrets out of git.
Companion UI
oxykit-mail-web is the Vue 3 SPA for Mail’s dashboard (Vite typically :5173, API :5026). It is a companion to the Mail API — not a separate docs pillar.
bash
git clone https://github.com/oxykit-dev/oxykit-mail-web
cd oxykit-mail-web
cp .env.example .env # optional
npm install
npm run dev # http://localhost:5173| Env var | Default | Purpose |
|---|---|---|
VITE_BACKEND_URL | http://localhost:5026 | Mail API base ({url}/api/v1) |
VITE_SIGNALR_HUB_URL | http://localhost:5026/hubs | Dashboard hub |
No Vite proxy — the browser hits Mail directly. Development CORS on Mail allows http://localhost:5173.
Known gaps
- No DKIM / ops screens yet (Admin DKIM helpers exist on the API).
- Sender can send mail but may get 403 on many dashboard stats — hide or gate those routes in the UI.
- No automated frontend tests; smoke Mail via its
hoppscotch/collection.