Add Basic Pomodoro Timer with Interactive Menu#14
Merged
swaparup36 merged 4 commits intocyclohexane-2:mainfrom Dec 9, 2025
Merged
Add Basic Pomodoro Timer with Interactive Menu#14swaparup36 merged 4 commits intocyclohexane-2:mainfrom
swaparup36 merged 4 commits intocyclohexane-2:mainfrom
Conversation
…modoro timer feature
Summary This Pull Request introduces a new Pomodoro timer feature to StudentHub. It includes an interactive menu, ASCII splash screen, and configurable study/work intervals, aligning with the project’s goal of helping students manage study sessions effectively. Key Features Added New pomodoro.py module implementing: Pomodoro countdown logic (work + break cycles) Cross-platform notifications (Linux/macOS/Windows) Sound alerts with automatic fallback ASCII splash screen at startup Interactive menu with options: Start session Configure durations Toggle sound Quick-test mode Updated main.py: Added pomodoro command Added CLI flags (--sessions, --work, --break-minutes, --no-sound) README updated with Pomodoro usage examples and documentation How It Works Users can start an interactive Pomodoro session: python main.py pomodoro Or run a non-interactive quick session: python main.py pomodoro --sessions 3 --work 30 --break-minutes 10 Testing Tested on Linux (Arch) terminal Verified: Work/break countdown logic Notification fallback behavior ASCII splash rendering Interactive menu navigation CLI integration (main.py) Edge cases tested: Ctrl-C interruption Sound disabled Quick-test mode with fractional minutes Related Issue This PR addresses and enhances: Issue cyclohexane-2#9 — Add Pomodoro Timer Feature Additional Notes The implementation is modular and can be extended later (e.g., long breaks, saving settings). No breaking changes introduced to existing commands.
Contributor
|
LGTM. Good job. Thanks! |
Contributor
Author
|
thanks. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add Basic Pomodoro Timer
Summary: This Pull Request introduces a new Pomodoro timer feature to StudentHub. It includes an interactive menu and configurable study/work intervals, aligning with the project’s goal of helping students manage their study sessions effectively.
Updated main.py: Added pomodoro command and CLI flags (--sessions, --work, --break-minutes, --no-sound).
Updated README with Pomodoro usage examples and documentation.
How It Works:
Interactive session: python main.py pomodoro
Non-interactive session: python main.py pomodoro --sessions 3 --work 30 --break-minutes 10
Testing:
Sound and notification tested on Linux (working well, added the required functionality for Windows and macOS, yet to be tested).
Tested on Linux (Arch) terminal. Verified work/break countdown logic, notification fallback behavior, ASCII splash rendering, interactive menu navigation, CLI integration in main.py. Edge cases validated: Ctrl-C interruption, sound disabled, quick-test mode with fractional minutes.
Related Issue:
Addresses: #9