6ede2bee7e
refactor(web): replace hardcoded app colors
2026-05-05 10:17:06 -07:00
da3129c89b
fix(platform): align mcp service urls
2026-05-05 09:19:11 -07:00
saravanakumardb1
e6dacbe809
feat(palace): web UI — palace client, 4 components, palace page, sidebar nav, 6 tests
2026-04-10 01:46:51 -07:00
saravanakumardb1
e5f287c7ea
feat(web): add intake URL bar, share dialog, intake API client — dashboard + enhanced sharing UI
2026-04-06 20:35:02 -07:00
saravanakumardb1
d4cc696e02
fix: align PromptTemplateEditor, SmartActionsPanel, prompts page with backend enums; fix RunPromptModal type cast
2026-04-06 16:27:22 -07:00
saravanakumardb1
192c7baf2f
fix: align web+mobile types with backend (categories, output types, field names, durationMs telemetry)
2026-04-06 16:24:31 -07:00
saravanakumardb1
093da76eee
feat(smart-actions): add run-stream SSE, history endpoint, weekly-digest template, web client functions (G1-G5)
2026-04-06 13:27:02 -07:00
saravanakumardb1
564e8f72dc
feat(web): add Smart Actions UI — prompt client, SmartActionsPanel, prompts page
...
Phase 3 of Smart Actions Roadmap:
- Create web/src/lib/prompt-client.ts: typed API client for all prompt endpoints
- listPromptTemplates, getPromptTemplate, createPromptTemplate, deletePromptTemplate
- runPrompt, suggestTags, checkDuplicates, suggestLinks, getReadingTime
- compareNotes, mergeNotes, getKnowledgeGaps
- Add Smart Actions types to web/src/lib/types.ts:
- PromptTemplate, RunPromptInput, RunPromptOutput, SimilarNote, KnowledgeGap
- Create SmartActionsPanel component:
- Reading time display, tag suggestion with accept/dismiss
- Category filter tabs, 2-column template grid
- One-click prompt execution with loading state
- Inline result display with copy/dismiss
- Create /prompts template library page:
- Browse built-in + custom templates with category filter
- Grid layout with input/output type badges
- Delete custom templates
- Wire SmartActionsPanel into note detail sidebar (above MetadataPanel)
- Add 'Prompts' nav item to Sidebar (Sparkles icon)
- Web typecheck passes, all 131 backend tests pass
2026-04-06 08:19:35 -07:00
32b5e1cd6c
fix(chat): empty workspace state and disabled Ask
...
Show guidance when the user has no workspaces and prevent submitting without a selected workspace.
Made-with: Cursor
2026-03-31 13:05:34 -07:00
a697752d15
feat: implement WEB_AI_FAST_ROADMAP (web + backend + docs)
...
Phase 1: Command palette (⌘K), editor autosave with quiet auto-saves, dashboard
saved views from API + quick links + onboarding seed CTA, explicit task scan panel.
Phase 2: Context pack formatter with YAML frontmatter, copy on note + workspace .md export.
Phase 3: ADR for hybrid search without embeddings; POST /notes/search (lexical +
ranked hybrid); search UI mode toggle.
Phase 4: POST copilot + suggest-title; in-editor copilot actions; /chat retrieval
answers with citations (backend chat.rag_enabled).
Phase 5: Settings MCP snippet, offline queue note, API token deferral; DEEP_LINKS.md.
Phase 6: Note shares + public GET; share page; POST onboarding-seed.
Phase 7: note_versions on PATCH; version panel; create-note templates; PWA manifest.
Flags: search.hybrid_enabled, copilot.enabled, chat.rag_enabled, onboarding.seed_enabled.
Made-with: Cursor
2026-03-31 13:00:36 -07:00
02bcb0d122
feat: integrate feedback, broadcast, survey, offline-queue clients + settings page + devops
...
Phase 4: Add @bytelyst/feedback-client, broadcast-client, survey-client, offline-queue
wrappers. Revamp settings page with profile, password change, feedback form.
Add BroadcastBanner and SurveyBanner to app layout. Wire offline queue flush on boot.
Phase 5: Fix .env.example branding (NoteLett), update docker-compose with all env vars,
enable GitHub Actions CI workflow with lint steps.
Made-with: Cursor
2026-03-29 20:57:27 -07:00
839218a19c
feat: add auth pages, AuthGuard, Tiptap editor, workspace CRUD, toast notifications
...
Phase 1 of the execution roadmap:
- Build login, register, forgot-password pages using useAuth() from @bytelyst/react-auth
- Add AuthGuard with kill-switch check wrapping (app) routes
- Replace plain textarea NoteEditor with Tiptap rich text editor
- Add workspace create/delete with CreateWorkspaceModal
- Wire sonner toast notifications on all mutation handlers
Made-with: Cursor
2026-03-29 20:38:33 -07:00
saravanakumardb1
360ef367d0
fix(a11y): add confirmation dialog for saved view delete
2026-03-29 01:57:19 -07:00
saravanakumardb1
547031531b
feat(settings): add dark/light theme toggle to Settings page
2026-03-29 01:33:01 -07:00
saravanakumardb1
619b27103b
fix(web): add id=main-content to main element for skip-link target
2026-03-28 00:51:29 -07:00
saravanakumardb1
0f56b12f3c
feat(a11y): add semantic <main> landmark to app layout
2026-03-27 16:43:55 -07:00
saravanakumardb1
85968e7b2a
fix(web): replace --ml-* (MindLyst) with --nl-* (NoteLett) CSS namespace across 18 files
2026-03-21 20:18:44 -07:00
saravanakumardb1
e5535252c7
feat(backend+web): note summarization + export endpoints [B3, B6]
...
- backend: POST /notes/:id/summarize — calls extraction-service, stores summary artifact
- backend: GET /notes/export — JSON + Markdown format support
- backend: extraction-client.ts for extraction-service integration
- backend: 4 new integration tests (summarize, export JSON, export MD, invalid format)
- web: summarizeNote + exportNotes client functions
- web: Summarize button on note detail page
- web: Export Notes button on workspaces page
- web: exclude e2e/ from vitest config
- Total: 80 backend, 14 web, 23 mobile = 117 tests
2026-03-19 08:59:26 -07:00
saravanakumardb1
a3267e4b1b
feat(web+backend): add create note, archive/restore, link note flows [B1, B2, B8]
...
- backend: add POST /notes/:id/restore endpoint (mirrors archive pattern)
- web: CreateNoteModal component (workspace picker, title, body, tags)
- web: LinkNoteModal component (search, select, relationship type picker)
- web: Dashboard 'New Note' button + CreateNoteModal integration
- web: Note detail Archive/Restore buttons + LinkNote button
- web: 4 CreateNoteModal tests + 4 LinkNoteModal tests
- backend: 1 restore integration test
- Total: 76 backend tests, 14 web tests
2026-03-19 08:44:39 -07:00
saravanakumardb1
4da42b2d27
fix(web): wrap search + workspaces pages in Suspense for useSearchParams prerendering
2026-03-12 17:18:12 -07:00
saravanakumardb1
c2202e9e52
refactor(web): extract shared API client factory, fix types, use crypto.randomUUID
...
- Created api-helpers.ts with shared getAccessToken() + createNotesApiClient()
- Removed duplicate API client factory from notes-client.ts, review-client.ts,
saved-views-client.ts (3 copies → 1 shared module)
- Added reviewedBy/reviewedAt/reviewNote fields to review-client NoteAgentActionDoc
type to match backend response shape
- Search page: use crypto.randomUUID() for saved view IDs instead of Date.now()
to prevent collisions on rapid saves
Verification: web typecheck + 6/6 tests pass.
2026-03-10 19:53:45 -07:00
saravanakumardb1
12d90098eb
feat(web): saved views CRUD, keyboard shortcuts, debounced search
...
- saved-views-client.ts: full CRUD client for backend saved-views module
- use-keyboard-shortcuts.ts: reusable hook for global keyboard shortcuts
- KeyboardShortcuts.tsx: wired into (app) layout — Cmd+K search, Cmd+N workspaces, Cmd+Shift+D dashboard, Cmd+Shift+R reviews, Esc blur
- use-debounce.ts: shared debounce hook (replaces inline setTimeout in search)
- Search page: saved views loaded from backend with save/delete UI
- Search page: search debounced at 250ms via useDebounce hook
- Updated search page test to mock saved-views-client and useDebounce
Verification: web typecheck + 6/6 tests pass.
2026-03-10 19:39:28 -07:00
saravanakumardb1
ca3cdbad4e
feat(web): wire full review UX — batch select, review notes, batch approve/reject
...
- Reviews page: batch selection mode with Select All / Clear
- Reviews page: batch Approve N / Reject N buttons
- Reviews page: review note textarea shared by single + batch flows
- review-client.ts: added batchReviewItems() calling POST /batch-review
- review-client.ts: approve/reject now pass reviewNote to backend
- Clears review note + batch selection after successful action
Verification: web typecheck passes.
2026-03-10 19:35:40 -07:00
saravanakumardb1
8a1b79c4e4
fix(notes): link recent note tags
2026-03-10 18:21:32 -07:00
saravanakumardb1
fa87efd13b
fix(notes): link search result filters
2026-03-10 18:17:13 -07:00
saravanakumardb1
758d5d42a4
fix(notes): link note review state
2026-03-10 18:12:23 -07:00
saravanakumardb1
260428d6f3
fix(notes): link workspace filters
2026-03-10 18:08:16 -07:00
saravanakumardb1
2a9f49048d
fix(notes): link dashboard metrics
2026-03-10 17:58:51 -07:00
saravanakumardb1
22df6d956f
fix(notes): activate workspace saved views
2026-03-10 17:53:32 -07:00
saravanakumardb1
88c11c25f2
fix(notes): activate saved searches
2026-03-10 17:49:02 -07:00
saravanakumardb1
99bc7a93ba
fix(notes): link review workflows
2026-03-10 17:43:57 -07:00
saravanakumardb1
6222fdaaa0
fix(notes): link dashboard workflows
2026-03-10 17:38:49 -07:00
saravanakumardb1
5ce940110f
fix(notes): select review queue items
2026-03-10 17:34:47 -07:00
saravanakumardb1
99484a5636
feat(notes): connect dashboard saved views
2026-03-10 17:23:23 -07:00
saravanakumardb1
9f2670ca8e
fix(notes): link dashboard note activity
2026-03-10 17:14:24 -07:00
saravanakumardb1
ab159501fa
fix(notes): activate workspace filtering
2026-03-10 16:49:32 -07:00
saravanakumardb1
4748ed32a6
feat(notes): wire backend note search
2026-03-10 16:44:27 -07:00
saravanakumardb1
5458090523
fix(notes): align active surface copy
2026-03-10 16:36:10 -07:00
saravanakumardb1
c99390e586
feat(notes): add web task creation flow
2026-03-10 16:25:16 -07:00
saravanakumardb1
ef82747e4f
feat(notes): add web artifact creation flow
2026-03-10 16:19:36 -07:00
saravanakumardb1
cdc03e3541
feat(notes): persist web note edits
2026-03-10 16:14:22 -07:00
saravanakumardb1
1bb220b2eb
feat(notes): enable web review decisions
2026-03-10 16:07:13 -07:00
saravanakumardb1
5995b6c725
feat(notes): wire backend-backed note workspace slice
2026-03-10 15:53:57 -07:00
saravanakumardb1
5f3b32bb93
test(web): cover integrated note runtime
2026-03-10 13:03:43 -07:00
saravanakumardb1
8bf0bb5452
feat(web): back review surfaces with backend data
2026-03-10 12:35:16 -07:00
saravanakumardb1
8340b1d489
feat(web): align notes runtime with backend
2026-03-10 12:22:39 -07:00
saravanakumardb1
3ddfa25acb
fix(web): harden shell routes and add regression coverage
2026-03-10 10:34:31 -07:00
saravanakumardb1
4fb859c81c
feat(notes): scaffold product surfaces and backend MCP slices
2026-03-10 08:53:07 -07:00