1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
//! frentui - Interactive TUI for batch file renaming
//!
//! This tool provides a single-screen TUI for batch file renaming
//! using the freneng library. All sections are visible simultaneously.
//!
//! ## Architecture
//!
//! **main.rs is intentionally minimal** - it serves only as the entry point and
//! high-level glue code that wires together components. All business logic,
//! rendering, and input handling has been factored out into dedicated modules:
//!
//! - `ui::render` - All UI rendering logic (section layout, dialogs)
//! - `ui::handler` - All key input handling logic
//! - `ui::completion` - Path completion utilities
//! - `sections::*` - Individual section definitions
//! - `app` - Application state and coordination
//! - `state` - State computation and management
//!
//! **DO NOT add business logic to main.rs** - if you need to add functionality,
//! place it in the appropriate module. This keeps the codebase maintainable and
//! prevents regression to a bloated main.rs file.
use App;
use io;
async