A Kanban-style task management tool built for Unity Editor using UI Toolkit.
- Kanban Board Interface: Visual task board with customizable columns
- Drag & Drop Tasks: Move tasks between columns by dragging cards
- Tag System: Organize tasks with custom tags and color coding
- Asset Attachments: Attach Unity assets directly to tasks
- Task Details: Title, description, date, tags, and file attachments
- Tag Manager: Dedicated tab to create and manage tags
- Data Persistence: Tasks saved in ScriptableObject asset
- Dark Theme UI: Modern, dark-themed interface
- Responsive Layout: Grid or list view for attachments
- Unity 6000.0 or higher
- UI Toolkit (built-in)
Focus Task/
├── Editor/ # Editor-only code
│ ├── TaskManagerWindow.cs # Main window implementation
│ ├── TaskCardDragManipulator.cs # Drag & drop logic
│ ├── TaskBoardData.cs # Data container
│ ├── FocusData.cs # Data models
│ └── TaskItem.cs # Task item definition
├── GUI/ # UI Toolkit assets
│ ├── TaskBoard.uss # Styles
│ ├── TaskBoardWindow.uxml # Main window layout
│ ├── TaskCard.uxml # Task card template
│ └── TaskBoardData.asset # Saved data
└── Runtime/ # Runtime assembly (currently empty)
Navigate to Tools > Focus Task Manager in Unity Editor menu.
- Click + Add Task button in the header
- Fill in task details:
- Title: Task name
- Description: Detailed description
- Tags: Select from available tags
- Attachments: Drag & drop Unity assets
- Click Save Changes or press
Ctrl+Enter
- Click + Add Column to create new columns
- Click ✎ icon on column header to rename
- Click ×ばつ to delete a column
- Switch to Tag Manager tab
- Enter tag name in input field
- Click Create Tag or press
Enter - View tag usage statistics
- Delete tags with ×ばつ button
- Click and hold a task card
- Drag to target column
- Release to move task
- Drag Unity assets (prefabs, textures, scripts, etc.) to the drop area
- Toggle between grid and list view
- Double-click to ping asset in Project view
- Right-click to remove attachment
- id (string) - title (string) - description (string) - date (string) - attachments (List<Object>) - checklist (List<ChecklistItem>)
- id (string) - title (string) - tasks (List<TaskData>)
- columns (List<TaskColumn>) - availableTags (List<string>)
Bug, Feature, Refactor, UI, Performance, High Priority, Low Priority
- TaskManagerWindow: Main Editor window (
Editor/TaskManagerWindow.cs:11) - TaskDragManipulator: Handles drag & drop interactions (
Editor/TaskCardDragManipulator.cs:6) - FocusBoardData: ScriptableObject data container (
Editor/FocusData.cs:38) - ITaskManager: Interface for task operations (
Editor/TaskBoardData.cs:8)
Esc: Close dialogCtrl+Enter: Save task changesEnter: Confirm action in dialogs
Modify GUI/TaskBoard.uss to customize:
- Colors and themes
- Layout spacing
- Typography
- Card styling
- Drop zone appearance
Edit Editor/FocusData.cs to add:
- Additional task properties
- Custom checklist types
- New data structures
Tasks are stored in Assets/Editor/Focus/UI/TaskBoardData.asset as a ScriptableObject.
- Initial release
- Kanban board with drag & drop
- Tag management system
- File attachments
- Dark themed UI
latondev
See package.json