Commit Graph

8 Commits (2e6b451c3d68edfd4907eaf3bd2533ce292fa767)

Author SHA1 Message Date
mirivlad 2e6b451c3d Reject revoked legacy sync API keys 2026-06-27 13:39:00 +08:00
mirivlad fcf0a07fcc Document and test sync API contract 2026-06-27 12:36:31 +08:00
mirivlad c793084fa4 server: add SMTP config, user management web pages, install script
- SMTP configuration in admin panel with test button
- Admin web interface for user creation (/admin/create-user)
- REST API for user creation (/admin/api/users/create)
- Self-registration endpoint (/register)
- Systemd service file and install script
2026-06-20 19:21:25 +08:00
mirivlad c9b35295cb feat: add user creation with manual password in admin UI and API 2026-06-20 12:20:46 +08:00
mirivlad cec2305b15 feat: add admin panel (login, dashboard, users, devices) 2026-06-20 11:21:29 +08:00
mirivlad dc4507a7ab test: add server unit tests 2026-06-20 02:08:21 +08:00
mirivlad 81756e598f feat: add routes and API handlers
- routes.go: endpoint registration
- handlers_api.go: health, pair, auth test, revoke, me, device register, sync push/pull, blobs
- handlers_auth.go: register, confirm, login, forgot, reset
- middleware.go: requireAuth, requireAdmin, validatePassword
- tokens.go: genDeviceToken
- helpers.go: jsonOK, jsonErr, sha256Hex
- schema.go: add missing tables (email_tokens, revisions, blobs)
- server.go: add SetupRoutes()
2026-06-20 02:05:56 +08:00
mirivlad e0ae36998e feat: add server core (server, config, schema) 2026-06-20 02:01:23 +08:00