6f41fa7cbe
- Install @phosphor-icons/react package - Create centralized Icon component with size/weight/color variants - Create icon registry with 34 icons across 5 categories - Replace all raw Unicode symbols with proper icon components - Add icons to navigation, buttons, status indicators, git operations - Add icon CSS with consistent sizing and spacing - Fix type definitions for Phosphor icon compatibility Quality gates: typecheck ✓, lint ✓, build ✓ (375KB bundle)
4.0 KiB
4.0 KiB
Documentation Overhaul Specification
Requirements
Functional Requirements
- README Rewrite: Comprehensive project overview with features, quick start, and links
- Feature Documentation: Every feature has a user guide in docs/features/
- API Documentation: All endpoints documented with examples
- Architecture Docs: Backend, frontend, and deployment architecture explained
- Deployment Guide: Step-by-step Docker/Traefik/Authentik setup
- Development Guide: Setup, testing, contributing guidelines
- Templates: Reusable templates for future documentation
- Auto-Documentation: Process ensuring new features get documented
Non-Functional Requirements
- Discoverability: Users can find docs easily from README
- Completeness: All current features documented
- Accuracy: Docs match current implementation
- Maintainability: Templates and processes keep docs up-to-date
- Accessibility: Markdown format, clear structure
Documentation Inventory
Current Features to Document
-
Project Management
- Create/edit/delete projects
- Project list view
- Project workspace (default view)
-
Git Repositories
- Create repositories (bare init, mirror clone)
- Smart URL parsing
- Repository list
- Repository deletion
-
Repository Workspace
- File browser (tree view)
- File viewer (syntax highlighting)
- Branch switching
- Repository switching
- Quick file editing
-
Git History
- Commit history visualization
- Branch graph
- Commit details (diff, stats)
- Branch filtering
-
Authentication
- Authentik OAuth2 flow
- Session-based auth
- User profile
- Logout
-
User Settings
- Theme selection
- Git identity
- Default editor
-
Tool Types
- Built-in types (code-server, jupyter)
- Custom type creation
- Compose template validation
-
SSH Keys
- Generate key pairs
- List/delete keys
- Copy public key
API Endpoints to Document
Auth
- GET /auth/login
- GET /auth/callback
- GET /auth/me
- POST /auth/logout
Projects
- GET /projects
- POST /projects
- GET /projects/{id}
- PUT /projects/{id}
- DELETE /projects/{id}
Repositories
- GET /projects/{id}/repositories
- POST /projects/{id}/repositories
- DELETE /projects/{id}/repositories/{id}
- GET /projects/{id}/repositories/{id}/files
- GET /projects/{id}/repositories/{id}/files/content
- POST /projects/{id}/repositories/{id}/files/content
- GET /projects/{id}/repositories/{id}/branches
- GET /projects/{id}/repositories/{id}/history
- GET /projects/{id}/repositories/{id}/commits/{hash}
Users
- GET /users/me
- PUT /users/me
- POST /users/me/avatar
- GET /users/me/config
- PATCH /users/me/config
Tool Types
- GET /tool-types
- POST /tool-types
- GET /tool-types/{id}
- PUT /tool-types/{id}
- DELETE /tool-types/{id}
SSH Keys
- GET /ssh-keys
- POST /ssh-keys
- DELETE /ssh-keys/{id}
Documentation Templates
Feature Doc Template
# [Feature Name]
## Overview
[1-2 sentence description]
## How to Use
[Step-by-step guide]
## Screenshots
[If applicable]
## API Reference
[Links to API docs]
## Configuration
[Relevant env vars/settings]
## Related
[Links to related features]
API Doc Template
## [METHOD] [PATH]
**Auth:** [Required/Optional]
**Description:** [What it does]
### Request
[Params/body schema]
### Response
[Success/error schemas]
### Example
[Code example]
Implementation Checklist
For every new feature:
- Create feature doc in docs/features/
- Document API endpoints in docs/api/
- Update README.md features list
- Update architecture docs if needed
- Add to CHANGELOG.md
Success Criteria
- README provides clear project overview
- All 8 feature areas have user guides
- All API endpoints have documentation
- New developer can set up project in < 15 minutes
- Deployment guide enables setup without asking questions
- Templates exist for future documentation
- CONTRIBUTING.md explains documentation requirements