Commit Graph

5 Commits

Author SHA1 Message Date
554f952b6f fix(api): handle 204 No Content response in delete method
The backend delete endpoint returns 204 No Content with an empty body,
but the frontend was attempting to parse the empty response as JSON.
This caused a "JSON.parse: unexpected end of data" error when deleting
files. The fix adds special handling to not parse JSON for delete
responses on success.
2026-02-06 09:03:05 -05:00
6e9d26fbeb fix(frontend): add tailwind typography plugin for markdown styling
Install @tailwindcss/typography package and configure it in
tailwind.config.js to properly style rendered markdown content.
The prose class now applies correct styles to headings, lists,
code blocks, and other markdown elements.
2026-02-06 09:01:32 -05:00
10f584f9a8 fix(api): ensure files array is never null in API response
Add null safety checks to prevent TypeError when backend returns null
instead of empty array for files list. Initialize empty slices on backend
and add null coalescing on frontend when accessing files state.

- Backend: Initialize files slice to always return [] instead of null
- Frontend: Add null checks for files state in all map/filter operations
2026-02-06 08:59:11 -05:00
a80de1730c feat: implement WYSIWYG markdown editor
Add complete markdown editor with Go backend and React/TypeScript frontend.

Backend:
- Cobra CLI with configurable host, port, data-dir, static-dir flags
- REST API for CRUD operations on markdown files (GET, POST, PUT, DELETE)
- File storage with flat .md structure
- Comprehensive Logrus logging for all operations
- Static asset serving for frontend

Frontend:
- React 18 + TypeScript + Tailwind CSS
- Live markdown editor with GFM preview (react-markdown)
- File management UI (list, create, open, save, delete)
- Theme system (Light/Dark/System) with localStorage persistence
- Responsive design (320px - 1920px+)

Testing:
- 6 backend tests covering CRUD round-trip, validation, error handling
- 19 frontend tests covering API, theme system, and UI components
- All tests passing with single 'make test' command

Build:
- Frontend compiles to optimized assets in dist/
- Backend can serve frontend via --static-dir flag
2026-02-06 08:53:52 -05:00
5782d08950 Initial: setup evaluation environment 2026-02-06 08:33:58 -05:00