Features • Installation • Usage • Keybindings • Requirements
Hachi (八, Japanese for "eight") is a beautiful, modern TUI (Terminal User Interface) application for managing ASUS ROG laptops on Linux. It provides an intuitive interface for controlling power profiles, battery charge limits, and custom fan curves through the asusd daemon.
Built with a cyberpunk-inspired aesthetic featuring sakura particle effects, gradient text, and a minimalist design language.
- 🎮 Power Profile Management - Switch between Quiet, Balanced, and Performance modes
- 🔋 Battery Charge Limiter - Set custom charge limits to prolong battery lifespan
- 🌡️ Custom Fan Curves - Fine-tune fan behavior with an interactive curve editor
- 🌸 Sakura Particle Effects - Beautiful animated cherry blossom petals floating across the screen
- 🎨 Gradient Header - Eye-catching "HACHI" title with cyan-to-pink gradient
- ⌨️ Vim-style Navigation - Familiar keybindings for efficient control
Coming soon
- Rust (1.70+) - Install via rustup
- asusd - ASUS Linux daemon (asus-linux.org)
# Clone the repository
git clone https://github.com/lxrdxe7o/hachi.git
cd hachi
# Build and install
cargo build --release
# Run
./target/release/hachi# Coming soon
yay -S hachiSimply run the application:
hachiThe TUI will display:
- Header - Animated logo with gradient title
- Power Profile Panel - Current and available power modes
- Battery Panel - Charge limit slider (0-100%)
- Fan Curve Panel - Interactive temperature/speed graph
| Key | Action |
|---|---|
1 / 2 / 3 |
Focus Power / Battery / Fan panel |
Tab / Shift+Tab |
Cycle through panels |
H / L |
Previous / Next panel (Vim-style) |
j / k |
Navigate options |
Enter / Space |
Confirm / Edit |
← / → |
Adjust values |
Esc |
Cancel / Exit edit mode |
r |
Refresh state from daemon |
? |
Toggle help |
q |
Quit |
src/
├── main.rs # Entry point and event loop
├── app.rs # Application state and logic
├── daemon.rs # D-Bus communication with asusd
├── error.rs # Error types
└── ui/
├── mod.rs # UI module exports
├── widgets.rs # Custom ratatui widgets
├── theme.rs # Color palette and styles
├── effects.rs # Sakura particles and animations
└── header_art.rs # Logo art and gradient colors
| Technology | Purpose |
|---|---|
| Rust | Systems programming language |
| Ratatui | Terminal UI framework |
| Crossterm | Cross-platform terminal manipulation |
| Tokio | Async runtime |
| zbus | D-Bus communication |
| tachyonfx | Terminal visual effects |
- Linux with ASUS ROG laptop
asusddaemon running (provides D-Bus interface)- Terminal with true color support (recommended)
- Nerd Font for icons (optional but recommended)
Hachi reads from the asusd configuration. No additional configuration files are needed.
Contributions are welcome! Please feel free to submit a Pull Request.
- 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.
- asus-linux.org for the amazing
asusddaemon - The Rust community for excellent libraries
- Inspired by cyberpunk aesthetics and Japanese design