Track what apps you use and how long you spend on them.
This app runs in your terminal and shows you exactly where your time goes during work sessions. Built with Ratatui.
No Rust installation needed! Download ready-to-use binaries for your platform from GitHub Releases:
- Linux: neura_hustle_tracker-linux-x86_64
- macOS (Intel): neura_hustle_tracker-macos-x86_64
- macOS (Apple Silicon): neura_hustle_tracker-macos-aarch64
- Windows: neura_hustle_tracker-windows-x86_64.exe
Prerequisites: Docker must be installed and running.
Download, make executable on Linux/macOS (chmod +x neura_hustle_tracker-*), and run. The binary will automatically:
- Generate database credentials (
.envfile) - Start PostgreSQL via Docker Compose
- Run database migrations
- Launch the app
Note: On macOS/Windows, you'll also need the daemon binary (neura_hustle_daemon) running in the background.
- Tracks your app usage - Automatically monitors which programs you're using
- Shows pretty charts - See your time broken down by app and category
- Saves your data - Everything stored locally in your own PostgreSQL database
- Works everywhere - Linux, macOS, and Windows
Copy and paste this into your terminal:
sudo apt update && sudo apt install -y docker.io curl git openssl && curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && source ~/.cargo/env && cargo install just && git clone https://github.com/adolfousier/neura-hustle-tracker.git && cd neura-hustle-tracker && just runThat's it! The app will start tracking automatically.
- Install Docker Desktop first
- Then paste this into Terminal:
brew install git rustup-init && rustup-init -y && source ~/.cargo/env && cargo install just && git clone https://github.com/adolfousier/neura-hustle-tracker.git && cd neura-hustle-tracker && just daemon-start- View your stats anytime:
just view
- Install Docker Desktop
- Open PowerShell as Administrator
- Run this:
powershell -Command "iwr -useb https://raw.githubusercontent.com/adolfousier/neura-hustle-tracker/main/src/scripts/windows_build/windows-install.ps1 | iex"- View your stats anytime:
just view
If you already have the prerequisites installed:
git clone https://github.com/adolfousier/neura-hustle-tracker
cd neura-hustle-tracker
cargo install just
just runDone! The app handles everything else automatically.
Once the app is running:
- d - Switch to Daily view
- w - Switch to Weekly view
- m - Switch to Monthly view
- s - View session history
- b - View activity breakdowns
- r - Rename apps to organize them better
- c - Change app category
- l - View logs
- Shift+C - See all available commands
- q - Quit
Timeline Feature (v0.4.16+):
- Daily view shows a 24-hour colored activity timeline at the bottom
- Each hour is colored by your dominant activity category
- Weekly and monthly views show daily activity patterns with matching data
- See your category colors at a glance (Development=Yellow, Browsing=Blue, Communication=Green, Media=Magenta, Files=Cyan)
The app tracks automatically. Just switch between your programs normally and it records everything.
Run just run and you're done. Everything works in one window.
Available commands for Linux:
just run- Start DB + build + run app (all in one!)just dev- Start DB + run in dev mode (faster builds)just db-up- Start PostgreSQL in Dockerjust db-down- Stop PostgreSQLjust build- Build TUI binary onlyjust build-daemon- Build daemon binary onlyjust clean- Clean all build artifacts and stop DBjust help- Show all available commands
You need two steps because of how these systems work:
- Start tracking in background:
just daemon-start - Open the dashboard:
just view
Why? On macOS/Windows, if the tracking runs in the dashboard window, it can't see when you switch to other apps. Running it in the background fixes this.
Commands for daemon mode:
just daemon-start- Start trackingjust view- Open dashboardjust daemon-stop- Stop trackingjust daemon-status- Check if running
-
Computer: Windows 10+, macOS 10.15+, or Linux with a desktop
-
Space: About 500MB for Docker and dependencies
-
Permissions:
- macOS: Terminal application needs the following permissions (daemon binary itself does NOT need permissions):
- Accessibility
- Screen & System Audio Settings
- Input Monitoring
- Windows: Works out of the box
- Linux: Needs a desktop environment (GNOME, KDE, etc.)
Note: On macOS/Windows, the daemon runs in the background without needing permissions. The Terminal application itself needs the permissions listed above to monitor your system properly.
- macOS: Terminal application needs the following permissions (daemon binary itself does NOT need permissions):
Wayland users (Linux): Install the Window Calls extension for GNOME to track windows properly.
First time running: The app creates secure database credentials automatically. You don't need to configure anything.
Want the app to start automatically when you log in? The daemon binary runs in the background without needing a terminal.
Linux (Desktop Autostart):
mkdir -p ~/.local/bin ~/.config/autostart
cp target/release/neura_hustle_daemon ~/.local/bin/
cp src/scripts/startup/neura-tracker.desktop ~/.config/autostart/If your ~/.local/bin is not in $PATH, edit the .desktop file and set the full path in the Exec= line.
Linux (systemd user service - alternative):
mkdir -p ~/.local/bin ~/.config/systemd/user
cp target/release/neura_hustle_daemon ~/.local/bin/
cp src/scripts/startup/neura-tracker.service ~/.config/systemd/user/
systemctl --user daemon-reload
systemctl --user enable --now neura-trackermacOS:
cp target/release/neura_hustle_daemon /usr/local/bin/
mkdir -p ~/Library/LaunchAgents/
cp src/scripts/startup/neura-tracker.plist ~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/neura-tracker.plistWindows:
copy src\scripts\startup\neura-tracker.bat "%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\"Want to remove Neura Hustle Tracker completely? It will delete the app, all tracked data, and the database volume.
Linux/macOS:
just uninstallOr use the dedicated script:
./src/scripts/uninstall.shWindows:
From PowerShell in the app directory:
just uninstallOr download and run the uninstall script:
powershell -ExecutionPolicy Bypass -File src/scripts/windows_build/windows-uninstall.ps1You'll be asked twice to confirm:
- First prompt: Confirm you want to proceed
- Second prompt: Type
yesto confirm deletion (this prevents accidental removal)
The uninstall will:
- Stop the PostgreSQL database
- Remove the database volume (deletes all your tracked data)
- Delete the installation directory
| Feature | Neura Hustle Tracker | ActivityWatch | RescueTime |
|---|---|---|---|
| Your data stays with you | ✅ | ✅ | ❌ |
| Open source | ✅ | ✅ | ❌ |
| Works offline | ✅ | ✅ | ❌ |
| Terminal interface | ✅ | ❌ | ❌ |
| Fast & lightweight | ✅ | ❌ | ❌ |
If you see Failed to connect to database or No such file or directory (os error 2):
- Make sure Docker is installed and running:
docker psshould work without errors - Check if PostgreSQL is running:
docker ps | grep postgres- if nothing shows up, the database container isn't running - Restart the database:
docker compose up -d(from the project directory) or just re-run the binary - it will auto-start PostgreSQL - Check your .env file: It should contain
DATABASE_URL,POSTGRES_USERNAME, andPOSTGRES_PASSWORD. If it's missing or corrupted, delete it and re-run the app to regenerate
- The binary requires Docker to be installed - it auto-starts PostgreSQL via Docker Compose
- On first run, the binary creates a
.envfile andcompose.ymlin~/.local/share/neura-hustle-tracker/(Linux),~/Library/Application Support/neura-hustle-tracker/(macOS), or%APPDATA%\neura-hustle-tracker\(Windows) - If you previously ran from source with
just run, the binary will use the existing.envin your project directory
The app uses port 52851 for PostgreSQL. If another service is using that port:
- Check what's using it:
lsof -i :52851(Linux/macOS) ornetstat -ano | findstr 52851(Windows) - Stop the conflicting service, or edit the port in
.env(DATABASE_URL) andcompose.yml
If windows aren't being tracked on Wayland, install the Window Calls GNOME extension.
The Terminal application (not the daemon) needs these permissions in System Settings > Privacy & Security:
- Accessibility
- Screen & System Audio Recording
- Input Monitoring
- App not starting? Make sure Docker is running
- Database errors? Try
just cleanthenjust run(from source), or delete~/.local/share/neura-hustle-tracker/and re-run the binary - Want to remove the app? Use
just uninstallto safely delete everything
Found a bug or want to add something? Check CONTRIBUTING.md.
See LICENSE file for details.
⭐ Star this repository to keep up with exciting updates and new releases, including powerful new features and productivity tracking capabilities! ⭐