A beautiful, minimalist Pomodoro timer application built with Flutter that helps you stay productive and focused. Track your work sessions, manage tasks, and sync across devices with cloud integration.
- Pomodoro Timer - Customizable work and break intervals with visual countdown
- Task Management - Create, edit, and track tasks with due dates and notes
- Session Statistics - Detailed analytics and charts showing your productivity trends
- Desktop Notifications - Get notified when sessions complete (Windows native notifications)
- System Tray Integration - Quick access to timer status from the system tray
- Supabase Integration - Secure cloud storage for tasks and analytics
- Automatic Resync - Tasks sync automatically every 5 minutes across all devices
- Manual Resync - Instant sync button for immediate updates
- Conflict Resolution - Smart "last write wins" strategy for seamless collaboration
- Offline Support - Works offline with local storage, syncs when connected
- Clean, Modern UI - Distraction-free interface with glassmorphism design
- Dark Theme - Easy on the eyes with beautiful gradients
- Smooth Animations - Confetti celebrations when all tasks are completed
- Responsive Design - Optimized for desktop (Windows, macOS, Linux)
- Touchpad Scrolling - Full touchpad support on Windows
- Daily Stats - Track focus sessions, break sessions, and total focus time
- Weekly Charts - Visual representation of your productivity over 7 days
- Session History - Complete history of all your Pomodoro sessions
- Task Completion Tracking - Monitor completed vs pending tasks
- Download
focusforge.msixfrom theinstallerfolder or releases page - Double-click the installer
- Click "Install" when prompted
- Find "Focus Forge" in your Start Menu
Note: The MSIX package is signed with a test certificate. You may need to enable Developer Mode on Windows or install the certificate to run the app.
- Navigate to
build\windows\x64\runner\Release\ - Run
focusforge.exedirectly (no installation required)
- Flutter SDK (3.5.4 or higher)
- Dart SDK
- Windows SDK (for Windows build)
- Visual Studio Build Tools with C++ support
- Git
-
Clone this repository:
git clone https://github.com/blankarray/pomodoro-timer.git cd pomodoro-timer -
Install dependencies:
flutter pub get
-
Set up environment variables:
- Copy
.env.exampleto.env - Add your Supabase credentials (optional, for cloud sync):
SUPABASE_URL=your_supabase_url SUPABASE_ANON_KEY=your_supabase_anon_key
- Copy
-
Build for your platform:
# Windows flutter build windows # macOS flutter build macos # Linux flutter build linux
-
Create Windows installer (optional):
dart run msix:create
- Launch Focus Forge
- (Optional) Sign in with Supabase for cloud sync
- Set your preferred work and break durations in Settings
- Create tasks using the "+" button
- Start your first Pomodoro session!
- Add Task: Click the "+" button in the task list header
- Edit Task: Click on any task to edit title, notes, or due date
- Complete Task: Check the checkbox to mark as complete
- Delete Task: Open task editor and click "Delete Task"
- Resync Tasks: Click the refresh icon to sync with other devices
- Tasks automatically sync every 5 minutes when signed in
- Click the resync button for immediate synchronization
- Sync status indicator shows current sync state
- Works seamlessly across multiple devices
lib/ βββ models/ # Data models (Task, DailyStats, etc.) βββ providers/ # Riverpod state management βββ screens/ # Main app screens βββ services/ # Business logic and external services βββ ui/ # Theme and styling βββ widgets/ # Reusable UI components - Flutter - Cross-platform UI framework
- Riverpod - State management
- Supabase - Backend as a Service (authentication, database)
- Shared Preferences - Local storage
- Google Fonts - Typography (Outfit font)
- FL Chart - Analytics visualization
- System Tray - Desktop integration
- β Fixed Windows system tray icon issues
- β Fixed touchpad scrolling on Windows
- β Added automatic 5-minute resync functionality
- β Improved sync conflict resolution
- β Enhanced UI with better scroll physics
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
iamvaar-dev
- Email: venkibvb5192@gmail.com
- GitHub: @iamvaar-dev
- Built with Flutter
- Backend powered by Supabase
- Icons from Material Design Icons
- Font: Outfit by Google Fonts
Focus Forge - Stay focused, stay productive! π





