A modern, web-based interface for Task Master with kanban board functionality. Built with Next.js, TypeScript, and Tailwind CSS.
- π― Visual Task Management - Intuitive kanban board interface
- π¨ Drag & Drop - Move tasks between different states seamlessly
- π Dark/Light Mode - Toggle between themes with system preference support
- π± Responsive Design - Works on desktop, tablet, and mobile
- β‘ Real-time Updates - File system watcher for tasks.json changes
- π Search & Filter - Find tasks quickly with advanced filtering
- π Analytics View - Visualize task progress and metrics
- Node.js 18+ and npm
- Task Master installed and initialized in your project
-
Clone the repository:
git clone <your-repo-url> cd taskmaster-ui
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open http://localhost:3001 to access the UI
The Taskmaster UI can be used with any project that has Taskmaster initialized. Here are several approaches:
Set the TASKMASTER_PROJECT_ROOT
environment variable to point to your target project:
# Unix/Linux/macOS
TASKMASTER_PROJECT_ROOT=/path/to/your/project npm run dev
# Windows (Command Prompt)
set TASKMASTER_PROJECT_ROOT=C:\path\to\your\project && npm run dev
# Windows (PowerShell)
$env:TASKMASTER_PROJECT_ROOT="C:\path\to\your\project"; npm run dev
Use the provided scripts for cross-platform compatibility:
# Unix/Linux/macOS
./run-with-project.sh /path/to/your/project
./run-with-project.sh /path/to/your/project dev # development mode
./run-with-project.sh /path/to/your/project start # production mode
# Windows
run-with-project.bat "C:\path\to\your\project"
run-with-project.bat "C:\path\to\your\project" dev # development mode
run-with-project.bat "C:\path\to\your\project" start # production mode
Create a symbolic link to the target project's .taskmaster
directory:
# Remove current .taskmaster if it exists
rm -rf .taskmaster
# Create symbolic link (Unix/Linux/macOS)
ln -s /path/to/your/project/.taskmaster .taskmaster
# Create symbolic link (Windows - run as Administrator)
mklink /D .taskmaster "C:\path\to\your\project\.taskmaster"
Copy or clone the UI directly into your target project:
cd /path/to/your/project
git clone <taskmaster-ui-repo> taskmaster-ui
cd taskmaster-ui
npm install
npm run dev
Install the UI globally and run it from anywhere:
# Install globally
npm install -g .
# Run from any Taskmaster project directory
cd /path/to/your/project
taskmaster-ui
The UI will automatically detect and work with:
- Taskmaster's tagged task format (
{ "master": { "tasks": [...] } }
) - Legacy flat format (
{ "tasks": [...] }
) - Multiple tags/contexts within the same project
Check the browser console or terminal output for confirmation that the correct tasks file is being loaded.
- Framework: Next.js 15 with App Router
- Language: TypeScript
- Styling: Tailwind CSS
- State Management: Zustand
- Drag & Drop: @dnd-kit
- File Watching: Chokidar
- Real-time: Socket.io
src/
βββ app/ # Next.js App Router pages
βββ components/
β βββ layout/ # Layout components (Sidebar, TopNav, etc.)
β βββ ui/ # Reusable UI components
β βββ kanban/ # Kanban board specific components
βββ hooks/ # Custom React hooks
βββ lib/ # Utility functions
βββ providers/ # Context providers (Theme, etc.)
βββ stores/ # Zustand stores
βββ styles/ # Global styles
βββ types/ # TypeScript type definitions
npm run dev
- Start development servernpm run build
- Build for productionnpm run start
- Start production servernpm run lint
- Run ESLintnpm run lint:fix
- Fix ESLint errorsnpm run format
- Format code with Prettiernpm run type-check
- Run TypeScript type checking
- Setup Next.js Project with TypeScript - Complete project scaffolding with all necessary dependencies
- Implement Basic UI Layout Structure - Responsive layout with sidebar, top navigation, and main content area
- Setup State Management with Zustand - Global state management for tasks and UI state
- Implement File System Watcher for tasks.json
- Create Task Data Models and API
- Implement Kanban Board View
- Add Task Card Components
- Implement Drag and Drop Functionality
- Add Task Creation/Editing
- Implement Task Filtering and Search
- Add Real-time Updates with WebSocket
- Create List View Component
- Implement Task Status Management
- Add Task Dependencies Visualization
- Create Analytics Dashboard
- Add Export/Import Functionality
- Implement User Preferences
- Add Keyboard Shortcuts
- Create Mobile-Responsive Design
- Add Comprehensive Testing
- AppLayout - Main application layout container
- Sidebar - Collapsible navigation sidebar with project selector
- TopNav - Top navigation with search, view switcher, and theme toggle
- MainContent - Content area container
- System preference detection
- Manual light/dark mode toggle
- Persistent theme selection
- CSS custom properties for theming
This is an open-source project. Contributions are welcome!
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Task Master - The CLI tool this UI wraps
- Claude - AI assistant that powers Task Master
If you have any questions or need help, please:
- Check the Task Master documentation
- Open an issue on GitHub
- Join our community discussions