- Status: APPROVED / COMPLETE WITH REVIEW CORRECTIONS
- Completed Deliverables:
- Project source-of-truth documentation framework and Git initialization.
- Next.js 15+ + React 19 + TypeScript application structure.
- Official Concept 04 brand vectors (
logo.svg,symbol.svg,icon-light.svg,icon-dark.svg,favicon.svg). - Brand color system finalized: NotesReady Ember (
#E85D3F). - Application shell components (
AppSidebar,AppHeader,MobileDrawer). - Final review corrections: removed browser alert from New Note button.
- Automated unit testing (Vitest) and static production build verification.
- Status: IMPLEMENTED / APPROVED
- Completed Deliverables:
- Decoupled
Notedomain entity and validation runtime guards (src/core/). - Native IndexedDB storage adapter (
notesready-db) with in-memory test fallback. - Reactive
WorkspaceContextanduseNotehook managing 400ms debounced autosave. - Immediate "New Note" creation flow with title auto-focus and instant editing canvas.
- Dynamic route
/app/notes/[id]with refresh persistence, deep-linking, and honest status indicators. - Real reactive recent notes and favorites list in sidebar and workspace directory views.
- 25 automated unit and integration tests passing.
- Decoupled
- Status: IMPLEMENTED & LOCALLY COMMITTED (
5be9bbd) - Completed Deliverables:
- Tiptap v3 rich text editor with restricted schema (H1–H3, bold, italic, inline code, bullet/ordered lists, task lists, blockquotes, code blocks, horizontal dividers, history).
- Contextual floating bubble menu positioned via ProseMirror coordinates with NotesReady Ember accents and Escape dismissal.
- Content-format marker (
plain-text-v1andtiptap-json-v1) with non-destructive in-memory legacy migration. - Truthful save states (
Saving...,Saved locally,Could not save) with failure preservation and retry. - Lifecycle flushing on unmount,
pagehide, andvisibilitychangewith in-flight save sequencing and stale overwrite protection. - Document size measurements (500 KB soft warning, 2 MB hard blocking limit with ProseMirror transaction filtering and recovery).
- Editor error boundary with plain-textarea fallback saving explicit
plain-text-v1. - Hostile paste sanitization and zero-telemetry content leak prevention (no
error.messageor note content in logs). - 62 automated unit and integration tests passing across 13 test files.