This commit implements a fully functional self-hosted task decomposition engine with: Backend (FastAPI + SQLite): - RESTful API with full CRUD operations for projects and tasks - Arbitrary-depth hierarchical task structure using self-referencing parent_task_id - JSON import endpoint for seeding projects from LLM-generated breakdowns - SQLAlchemy models with proper relationships and cascade deletes - Status tracking (backlog, in_progress, blocked, done) - Auto-generated OpenAPI documentation Frontend (React + Vite + Tailwind): - Dark cyberpunk theme with orange accents - Project list page with create/import/delete functionality - Dual view modes: * Tree View: Collapsible hierarchical display with inline editing * Kanban Board: Drag-and-drop status management - Real-time CRUD operations for tasks and subtasks - JSON import modal with validation - Responsive design optimized for desktop Infrastructure: - Docker setup with multi-stage builds - docker-compose for orchestration - Nginx reverse proxy for production frontend - Named volume for SQLite persistence - CORS configuration for local development Documentation: - Comprehensive README with setup instructions - Example JSON import file demonstrating nested structure - API endpoint documentation - Data model diagrams
114 lines
2.7 KiB
JSON
114 lines
2.7 KiB
JSON
{
|
|
"project": {
|
|
"name": "Project Lyra",
|
|
"description": "Long-running AI assistant project with modular architecture"
|
|
},
|
|
"tasks": [
|
|
{
|
|
"title": "Cortex Rewire",
|
|
"description": "Refactor reasoning layer for improved performance",
|
|
"status": "backlog",
|
|
"subtasks": [
|
|
{
|
|
"title": "Reflection → fix backend argument bug",
|
|
"status": "in_progress",
|
|
"subtasks": [
|
|
{
|
|
"title": "Normalize LLM backend arg in reflection calls",
|
|
"status": "in_progress"
|
|
},
|
|
{
|
|
"title": "Add unit tests for reflection module",
|
|
"status": "backlog"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Reasoning parser cleanup",
|
|
"status": "backlog",
|
|
"subtasks": [
|
|
{
|
|
"title": "Remove deprecated parse methods",
|
|
"status": "backlog"
|
|
},
|
|
{
|
|
"title": "Optimize regex patterns",
|
|
"status": "backlog"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Frontend Overhaul",
|
|
"description": "Modernize the UI with new component library",
|
|
"status": "backlog",
|
|
"subtasks": [
|
|
{
|
|
"title": "Migrate to Tailwind CSS",
|
|
"status": "backlog"
|
|
},
|
|
{
|
|
"title": "Build new component library",
|
|
"status": "backlog",
|
|
"subtasks": [
|
|
{
|
|
"title": "Button components",
|
|
"status": "backlog"
|
|
},
|
|
{
|
|
"title": "Form components",
|
|
"status": "backlog"
|
|
},
|
|
{
|
|
"title": "Modal components",
|
|
"status": "backlog"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Implement dark mode toggle",
|
|
"status": "backlog"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "API v2 Implementation",
|
|
"status": "blocked",
|
|
"description": "Blocked on database migration completion",
|
|
"subtasks": [
|
|
{
|
|
"title": "Design new REST endpoints",
|
|
"status": "done"
|
|
},
|
|
{
|
|
"title": "Implement GraphQL layer",
|
|
"status": "blocked"
|
|
},
|
|
{
|
|
"title": "Add rate limiting",
|
|
"status": "backlog"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Documentation Sprint",
|
|
"status": "done",
|
|
"subtasks": [
|
|
{
|
|
"title": "API documentation",
|
|
"status": "done"
|
|
},
|
|
{
|
|
"title": "User guide",
|
|
"status": "done"
|
|
},
|
|
{
|
|
"title": "Developer setup guide",
|
|
"status": "done"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|