A modern, lightweight Pomodoro timer application built with vanilla JavaScript and modern web technologies.
- Clean, minimal interface with glassmorphism design
- 25-minute focus sessions with 5-minute short breaks and 15-minute long breaks
- Session tracking and statistics
- Local storage for settings persistence
- Audio notifications for session completion
- Browser notifications support
- Responsive design for all devices
- No authentication required - works immediately
- Frontend: Vanilla JavaScript (ES6+), HTML5, CSS3
- Storage: LocalStorage for persistence
- Build: Static file deployment
- Deployment: Vercel (configured)
- Modern web browser (Chrome, Firefox, Safari, Edge)
- No server or build tools required
-
Clone the repository:
git clone https://github.com/yourusername/focusroom.git cd focusroom
-
Open
index.html
in your browser or serve the files with any static file server:npx serve . # or python -m http.server 8000
- Open the application in your browser
- Adjust timer settings if needed (focus time, break durations)
- Click "Start" to begin a focus session
- Take breaks when prompted
- Track your progress with the built-in statistics
focusroom/
├── index.html # Main application page
├── timer.js # Core timer functionality (ES6 class)
├── styles.css # Glassmorphism styling
├── package.json # Project configuration
├── vercel.json # Deployment configuration
├── .gitignore # Git ignore patterns
└── README.md # Project documentation
- Customizable focus and break durations
- Visual progress indicator with circular timer
- Session and cycle tracking
- Automatic progression through work/break cycles
- Daily session count
- Total time focused
- Current streak tracking
- Completed cycles counter
- Glassmorphism UI with backdrop filters
- Responsive layout for mobile and desktop
- Professional brown color scheme
- Smooth animations and transitions
- Chrome 88+
- Firefox 84+
- Safari 14+
- Edge 88+
- Lightweight: ~50KB total size
- No external dependencies
- Optimized for fast loading
- Efficient local storage usage
- Fork the repository
- Create a feature branch (
git checkout -b feature/improvement
) - Commit your changes (
git commit -am 'Add new feature'
) - Push to the branch (
git push origin feature/improvement
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
The application is configured for deployment on Vercel with optimized caching and performance settings.
Deploy your own instance:
For questions or suggestions, please open an issue on GitHub.