Commit Graph

3 Commits

Author SHA1 Message Date
071d971854 fix(storage): return empty array instead of null for file list
Initialize files slice with make() to ensure JSON serialization
returns [] instead of null when no files exist. Prevents frontend
TypeError when calling .map() on null.
2026-02-06 10:36:08 -05:00
773b9db4b2 feat: implement WYSIWYG markdown editor
Add full-stack markdown editor with Go backend and React frontend.

Backend:
- Cobra CLI with --data-dir, --port, --host flags
- REST API for markdown file CRUD operations
- File storage with flat directory structure
- logrus logging for all operations
- Static file serving for frontend
- Comprehensive tests for CRUD and static assets

Frontend:
- React + TypeScript + Vite + Tailwind CSS
- Live markdown preview with marked (GFM)
- File management: list, create, open, save, delete
- Theme system: Dark/Light/System with persistence
- Responsive design (320px to 1920px)
- Component tests for Editor, Preview, Sidebar

Build:
- Makefile for build, test, and run automation
- Single command testing (make test)

Closes SPEC.md requirements
2026-02-06 10:01:09 -05:00
6b66cee21d Initial: setup evaluation environment 2026-02-06 09:30:14 -05:00