- Added Milkdown dependencies: @milkdown/kit, @milkdown/react, @milkdown/theme-nord. - Implemented MilkdownEditor component for rich text editing in notes. - Updated /notes/$noteId route to include editable title and auto-saving functionality. - Enhanced UI with loading states, saving indicators, and delete confirmation dialog. - Applied Milkdown-specific CSS overrides for consistent theming and styling. - Improved note update logic with debounced saving and cleanup on unmount.
43 lines
1.9 KiB
Markdown
43 lines
1.9 KiB
Markdown
## Your Task
|
|
|
|
1. Read the full app PRD at `prd-main.md` (in the same directory as this file)
|
|
2. Read the PRD at `prd.json` (in the same directory as this file)
|
|
3. Read the progress log at `progress.txt` (check Codebase Patterns section first)
|
|
4. **DO YOUR JOB**
|
|
5. Update the PRD to set `passes: true` for the completed story
|
|
6. Append your progress to `progress.txt`
|
|
|
|
## Progress Report Format
|
|
|
|
APPEND to progress.txt (never replace, always append):
|
|
```
|
|
## [Date/Time] - [Story ID]
|
|
- What was implemented
|
|
- Files changed
|
|
- **Learnings for future iterations:**
|
|
- Patterns discovered (e.g., "this codebase uses X for Y")
|
|
- Gotchas encountered (e.g., "don't forget to update Z when changing W")
|
|
- Useful context (e.g., "the evaluation panel is in component X")
|
|
---
|
|
```
|
|
|
|
## USER REQUEST
|
|
{
|
|
"id": "US-016",
|
|
"title": "Milkdown note editor",
|
|
"description": "As a user, I want a full-screen Markdown editor for each note so that I can write rich content without leaving the app.",
|
|
"acceptanceCriteria": [
|
|
"@milkdown/react and @milkdown/preset-commonmark installed; Milkdown editor renders at route /notes/:noteId",
|
|
"Supported Markdown: headings (H1-H6), bold, italic, inline code, code blocks, bullet lists, ordered lists, blockquotes",
|
|
"Note title editable as a shadcn/ui Input (variant borderless/ghost style) at the top of the page (separate from Milkdown content area)",
|
|
"Content auto-saves to SQLite via notes.update on Milkdown onChange event, debounced 500ms",
|
|
"Unsaved indicator shown using shadcn/ui Badge (variant=secondary, text 'Saving...') next to the title while save is pending",
|
|
"Back button uses shadcn/ui Button (variant=ghost, size=icon) with ArrowLeft Lucide icon; navigates to the previous route",
|
|
"All UI chrome uses shadcn/ui components (already installed)",
|
|
"Typecheck passes",
|
|
"Verify in browser using dev-browser skill"
|
|
],
|
|
"priority": 16,
|
|
"passes": false,
|
|
"notes": ""
|
|
} |