Skip to content

Commit 97a9eef

Browse files
committed
docs: update roadmap with v0.3.0 status and completed tasks
1 parent 0b2e1e3 commit 97a9eef

File tree

1 file changed

+40
-24
lines changed

1 file changed

+40
-24
lines changed

ROADMAP.md

Lines changed: 40 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This is a local planning document for upcoming features and improvements.
44

55
---
66

7-
## Current Status (v0.2.0)
7+
## Current Status (v0.3.0)
88

99
**Core Features Complete:**
1010
- Lazy file reading with indexed line positions
@@ -27,15 +27,28 @@ This is a local planning document for upcoming features and improvements.
2727
- Tab navigation (Tab, Shift+Tab, 1-9)
2828
- AUR package available
2929

30+
**v0.3.0 Features:**
31+
- Regex filter mode (Tab to toggle)
32+
- Case sensitivity toggle (Alt+C)
33+
- Filter history with mode persistence
34+
- Expandable log entries (Space to toggle, c to collapse)
35+
- Persistent filter history to disk
36+
- Stats panel (line counts)
37+
- Filter progress percentage display
38+
- Streaming filter with SIMD search (memmem) for better performance
39+
- Grep-style search for case-sensitive patterns
40+
3041
---
3142

3243
## Upcoming Features & Improvements
3344

3445
### 🔴 HIGH PRIORITY
3546

36-
#### Phase 1: Multi-Tab Support (CLI Arguments)
47+
#### Phase 1: Multi-Tab Support (CLI Arguments)
3748
**Goal:** View multiple log files in tabs within single UI instance
3849

50+
**Status:** Complete (v0.2.0)
51+
3952
```bash
4053
lazytail api.log worker.log db.log
4154
# Opens UI with side panel showing all sources
@@ -81,30 +94,30 @@ Two-panel layout:
8194
- Future: Bookmarks section at bottom for project-scoped quick access
8295

8396
**Tasks:**
84-
- [ ] Multi-tab state management
85-
- [ ] Add `Vec<TabState>` to App (selection, filter, scroll, follow mode per tab)
86-
- [ ] Track active tab index
87-
- [ ] Refactor single-file state into `TabState` struct
88-
- [ ] Side panel UI component
89-
- [ ] Render source list on left
90-
- [ ] Highlight active source
91-
- [ ] Show status indicators (active/ended, filter active, follow mode)
97+
- [x] Multi-tab state management
98+
- [x] Add `Vec<TabState>` to App (selection, filter, scroll, follow mode per tab)
99+
- [x] Track active tab index
100+
- [x] Refactor single-file state into `TabState` struct
101+
- [x] Side panel UI component
102+
- [x] Render source list on left
103+
- [x] Highlight active source
104+
- [x] Show status indicators (active/ended, filter active, follow mode)
92105
- [ ] Toggle panel visibility keybinding
93106
- [ ] Configurable panel width
94-
- [ ] Tab navigation keybindings
95-
- [ ] `Tab` / `Shift+Tab` to cycle sources
96-
- [ ] `1-9` for direct source access
107+
- [x] Tab navigation keybindings
108+
- [x] `Tab` / `Shift+Tab` to cycle sources
109+
- [x] `1-9` for direct source access
97110
- [ ] Arrow keys to navigate panel when focused
98-
- [ ] Show keybindings in help overlay
99-
- [ ] File watching for multiple files
100-
- [ ] Watch all open files simultaneously
101-
- [ ] Update correct tab on file change
102-
- [ ] CLI argument handling
103-
- [ ] Accept multiple file paths
104-
- [ ] Validate all files exist before starting
105-
- [ ] Backward compatibility
106-
- [ ] Single file still works: `lazytail file.log`
107-
- [ ] Add tests for multi-tab behavior
111+
- [x] Show keybindings in help overlay
112+
- [x] File watching for multiple files
113+
- [x] Watch all open files simultaneously
114+
- [x] Update correct tab on file change
115+
- [x] CLI argument handling
116+
- [x] Accept multiple file paths
117+
- [x] Validate all files exist before starting
118+
- [x] Backward compatibility
119+
- [x] Single file still works: `lazytail file.log`
120+
- [x] Add tests for multi-tab behavior
108121

109122
**Future Side Panel Enhancements:**
110123
- [ ] Tree structure with collapsible groups
@@ -620,10 +633,13 @@ TRACE → DEBUG → INFO → WARN → ERROR → FATAL
620633
## Future Ideas (Backlog)
621634

622635
### Performance & Scalability
636+
- [x] Streaming filter with mmap for large files
637+
- [x] SIMD-accelerated search using memchr/memmem
638+
- [x] Grep-style lazy line counting for case-sensitive search
623639
- [ ] Performance profiling on very large files (100GB+)
624-
- [ ] Consider mmap for extremely large files
625640
- [ ] Optimize ANSI parsing (cache parsed lines?)
626641
- [ ] Benchmark filtering performance
642+
- [ ] Further optimize case-insensitive search
627643

628644
### Features
629645
- [ ] JSON log parsing and formatted view

0 commit comments

Comments
 (0)