1.0 KiB
1.0 KiB
| id | title | status | assignee | created_date | updated_date | labels | dependencies | priority |
|---|---|---|---|---|---|---|---|---|
| TASK-7 | EncryptID auth integration | Done | 2026-02-13 20:39 | 2026-02-13 21:20 | high |
Description
Wire up EncryptID SDK for user authentication. JWT session management, user-scoped notes/notebooks. Currently the app has no auth - all data is shared.
Implementation Notes
EncryptID auth integrated:
- @encryptid/sdk installed as local file dep
- Server auth: getAuthUser, requireAuth, getNotebookRole in src/lib/auth.ts
- Client auth: authFetch wrapper with JWT token in src/lib/authFetch.ts
- UI: AuthProvider, UserMenu, /auth/signin passkey page
- All write routes protected (POST/PUT/DELETE require auth)
- Read routes remain public
- First-user auto-claims orphaned notebooks/notes
- Ownership: notebook collaborator roles, note author verification
- Build verified clean (Next.js 14.2.35)
- Pushed to Gitea main branch