A deployable markdown editor that connects with your self hosted files and lets you edit in a beautiful interface
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Mark Phase 1 and Phase 2 as complete in implementation plan

+39 -39
+39 -39
IMPLEMENTATION_PLAN.md
··· 662 662 663 663 ## Implementation Phases 664 664 665 - ### Phase 1: Foundation (Week 1-2) 665 + ### Phase 1: Foundation (Week 1-2) ✅ 666 666 **Goal:** Basic authentication and file browsing 667 667 668 668 **Backend Tasks:** 669 - - [ ] Project setup (Go modules, directory structure) 670 - - [ ] SQLite database setup with migrations 671 - - [ ] GitHub OAuth integration with goth 672 - - [ ] Session management with encrypted cookies 673 - - [ ] Basic HTTP server with chi 674 - - [ ] Health check endpoint 675 - - [ ] GET /api/auth/github/login 676 - - [ ] GET /api/auth/github/callback 677 - - [ ] GET /api/auth/user 678 - - [ ] GET /api/repos (list repositories) 679 - - [ ] GET /api/repos/:owner/:repo/files (list files) 669 + - [x] Project setup (Go modules, directory structure) 670 + - [x] SQLite database setup with migrations 671 + - [x] GitHub OAuth integration with goth 672 + - [x] Session management with encrypted cookies 673 + - [x] Basic HTTP server with chi 674 + - [x] Health check endpoint 675 + - [x] GET /api/auth/github/login 676 + - [x] GET /api/auth/github/callback 677 + - [x] GET /api/auth/user 678 + - [x] GET /api/repos (list repositories) 679 + - [x] GET /api/repos/:owner/:repo/files (list files) 680 680 681 681 **Frontend Tasks:** 682 - - [ ] Astro project setup 683 - - [ ] Tailwind CSS configuration 684 - - [ ] shadcn/ui setup and initial components (button, dialog, input, etc.) 685 - - [ ] Landing page with "Login with GitHub" button 686 - - [ ] OAuth callback handler 687 - - [ ] Dashboard shell (empty) 688 - - [ ] Repository selector dropdown 689 - - [ ] File tree component (read-only) 690 - - [ ] API client setup (axios with interceptors) 682 + - [x] Astro project setup 683 + - [x] Tailwind CSS configuration 684 + - [x] shadcn/ui setup and initial components (button, dialog, input, etc.) 685 + - [x] Landing page with "Login with GitHub" button 686 + - [x] OAuth callback handler 687 + - [x] Dashboard shell (empty) 688 + - [x] Repository selector dropdown 689 + - [x] File tree component (read-only) 690 + - [x] API client setup (axios with interceptors) 691 691 692 692 **Testing:** 693 - - [ ] Manual: Complete OAuth flow 694 - - [ ] Manual: View list of repositories 695 - - [ ] Manual: Browse files in a test repository 693 + - [x] Manual: Complete OAuth flow 694 + - [x] Manual: View list of repositories 695 + - [x] Manual: Browse files in a test repository 696 696 697 697 **Deliverable:** User can log in and browse their repositories and files. 698 698 699 699 --- 700 700 701 - ### Phase 2: Editor Integration (Week 3-4) 701 + ### Phase 2: Editor Integration (Week 3-4) ✅ 702 702 **Goal:** Read and edit markdown files 703 703 704 704 **Backend Tasks:** 705 - - [ ] GET /api/repos/:owner/:repo/files/*path (get file content) 706 - - [ ] Markdown + YAML frontmatter parser 707 - - [ ] PUT /api/repos/:owner/:repo/files/*path (save to draft) 708 - - [ ] Draft content storage in SQLite 705 + - [x] GET /api/repos/:owner/:repo/files/*path (get file content) 706 + - [x] Markdown + YAML frontmatter parser 707 + - [x] PUT /api/repos/:owner/:repo/files/*path (save to draft) 708 + - [x] Draft content storage in SQLite 709 709 710 710 **Frontend Tasks:** 711 - - [ ] TipTap editor setup 712 - - [ ] Markdown extensions for TipTap 713 - - [ ] Frontmatter editor component (form) 714 - - [ ] File selection handler 715 - - [ ] Content display/edit toggle 716 - - [ ] Auto-save functionality (debounced) 717 - - [ ] Unsaved changes warning 711 + - [x] TipTap editor setup 712 + - [x] Markdown extensions for TipTap 713 + - [x] Frontmatter editor component (form) 714 + - [x] File selection handler 715 + - [x] Content display/edit toggle 716 + - [x] Auto-save functionality (debounced) 717 + - [x] Unsaved changes warning 718 718 719 719 **Testing:** 720 - - [ ] Manual: Open a markdown file 721 - - [ ] Manual: Edit content and see auto-save 722 - - [ ] Manual: Switch files and verify draft persistence 720 + - [x] Manual: Open a markdown file 721 + - [x] Manual: Edit content and see auto-save 722 + - [x] Manual: Switch files and verify draft persistence 723 723 724 724 **Deliverable:** User can read and edit markdown files with auto-save. 725 725