A modern, elegant timer application designed for deep work and productivity.
Built with JavaFX and featuring a warm, coffee-themed design.
- ✨ Features
- ⬇️ Installation
- 🏗️ Build from Source (Optional)
- 📦 Dependencies
- 🤝 Contributing
- 🙏 Acknowledgements
- 📝 License
- ⏲️ Smart Timer: Configurable work (1-900 min) and break sessions with visual circular countdown.
- 📊 Progress Tracking: Daily goal tracking, streak monitor, and "yesterday vs. today" comparison.
- 🎉 Goal Celebration: Confetti animation with congratulations message when you reach your daily goal.
- 📜 Session History: Detailed logs of all work sessions featuring both table and chart views.
- 🔔 Notifications: Custom sound support (MP3/WAV) and system tray alerts for session transitions.
- 🌙 Dark Mode: Checkbox that allows to choose between a light or dark theme for more comfortable viewing.
- 🖥️ Modern UI: Clean, coffee-themed design with custom window controls.
- ⌨️ Shortcuts: Space (Start/Pause), R (Reset), S (Settings).
- 🗂️ Local Data: All data is stored locally:
- Windows:
%APPDATA%/FocusBean/ - Linux:
~/.local/share/FocusBean/
- Windows:
- Download: Get
FocusBean-{version}-Windows.zipfrom the Releases page. - Setup: Extract the file to your desired location.
- Run: Double-click
FocusBean.exeinside theFocusBean-{version}directory.
Focus Bean allows for a clean, user-local installation in your home directory.
Before running the application, ensure you have the standard JavaFX dependencies installed (GTK3, ALSA, GStreamer). Most desktop systems have these, but you can verify:
AlmaLinux / RHEL:
sudo dnf install -y gtk3 alsa-lib gstreamer1-plugins-base gstreamer1openSUSE:
sudo zypper install -y libgtk-3-0 libasound2 gstreamer-plugins-base gstreamer-plugins-good-
Download: Get
FocusBean-{version}-Linux.zipfrom the Releases page. -
Install: Open a terminal and run the following to install to
~/.focusbean:mkdir -p ~/.focusbean unzip FocusBean-{version}-Linux.zip -d ~/.focusbean
-
Run:
sh ~/.focusbean/FocusBean-{version}/bin/FocusBean -
Add to Desktop (Optional): To add Focus Bean to your system menu and launcher, run:
sh ~/.focusbean/FocusBean-{version}/install_shortcut.sh
If you prefer to build the application yourself:
Prerequisites: Java 25 JDK, Gradle 9.1.
git clone https://github.com/kullik01/Focus-Bean.git
cd Focus-Bean
./gradlew runFocus Bean is built with the following technologies:
| Dependency | Version | Purpose |
|---|---|---|
| JavaFX | 25 | UI components and core graphics |
| Gson | 2.11.0 | JSON serialization for user data |
| JUnit 5 | 5.10.2 | Unit testing framework |
Note: The application bundle includes the necessary Java runtime, so you do not need to install Java globally.
Contributions are welcome! Please feel free to submit a Pull Request or open an issue for bugs and feature requests.
BSD 3-Clause License – see LICENSE.
Made with ❤️ and ☕ for productivity.
