893e382d7fbc120d08490e72109d302b470d82d6
Implemented a full keyboard navigation system with directional commands (C-h/j/k/l) for moving between views, vim-style navigation (j/k for rows, h/l for columns), and TAB cycling. Added table header navigation mode where users can move between columns and change sort order with keyboard shortcuts. The navigation follows visual position: left sidebar, table, and filter bar can all be reached with directional keys. Created a keymap system with context-aware bindings that resolve commands based on current focus (Table, TableHeaders, FilterBar, Sidebar). Commands are dispatched through a centralized handler that manages focus transitions and view state. Added helper methods to cycle through column headers with proper wrapping. Auto-select first task on load when tasks exist, and set initial window focus so keyboard shortcuts work immediately without requiring a mouse click.
Task Warrior GPUI
A desktop GUI for TaskWarrior built with GPUI, the GPU-accelerated UI framework from Zed.
Features
- View and filter tasks by project, status, priority, and due date
- Project tree with task counts
- Tag filtering with multi-select
- Sortable task table with pagination
- Dark theme (Ayu-inspired)
Requirements
- Rust (2024 edition)
- TaskWarrior installed and configured
Installation
# Clone the repository
git clone https://github.com/0xErwin1/taskwarrior-gpui.git
cd taskwarrior-gpui
# Option 1: Run directly
cargo run --release
# Option 2: Install globally
cargo install --path .
The application will use your existing TaskWarrior data directory.
License
MIT OR Apache-2.0
Languages
Rust
99.7%
Nix
0.3%
