Skip to content

A Productivity tool, the Pomodoro Timer, made in Python using pygame

License

Notifications You must be signed in to change notification settings

TERNION-1121/Pomodoro-Timer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Downloads License Open Issues

⏳ Pomodoro Timer ⌛

A Productivity tool, the Pomodoro Timer, made in Python using pygame.

Image Courtesy


📃 Description

What is the Pomodoro Technique?

The most famous of all productivity, especially time-management tips, the Pomodoro Technique is a method to do work without stress, efficiently, and that too with fun!

  1. Begin a timer for 25-30 minutes, do the work you wish to focus on during this session
  2. After the main session, begin another timer for 5 minutes. This is the break timer, where you take a break from your work (usually listening to music, walking etc.).
  3. Done with the break? Begin another Pomodoro session!
  4. Repeat till you are done with about 3-4 sessions. Take a bigger break of about 20-30 minutes this time.

One of the reasons this method is the most effective is, it breaks down complex work schedules into simpler ones; And the 5 minutes breaks often serve as a game reward for the work done! This in turn encourages the brain to do more of these sessions.


The "Why?" of the Project

I often use the Pomodoro Technique for my studies. But it was when I saw this Youtube Short by Coding With Lewis (thanks a lot Lewis :), I got the idea to code a Pomodoro Timer!
I saw it as a great opportunity to make my firstever, BIG, GUI application. And that's when I sat down with Python to get on this project.
Tkinter is a great and famous tool used by Python Developers to make GUI applications, but since I had a little bit experience with the pygame library, I decided to use it. (next time Tkinter :)


🎯Challenges, ✨Features & 📝Learnings

While coding this project, I had a simple approach in mind:

  • Have fade animations with the text and button widgets,
  • & Have sounds upon interactions with the application.

Yet, to achieve these features, it took me long to fix the bugs that ocurred while coding it. I came to learn a lot of stuff on my own! But most importantly it was @Legendary3995 (thanks a lot :D) who helped me to tackle the automatic pause upon holding the window at the title bar, a problem which (almost) looked impossible to fix on my own.


Update: At the first release v1.1.0, more of the below features were added:

  • Switch between light and dark mode using L key.
  • Music plays in between sessions, and it can be muted with the M key.

How to use the Project

To download the application installer, head towards the pre-release section of this repository; or, click here.
Run through the installer, and the click the Desktop Icon of the Pomodoro Timer to run the application.


On "How to Contribute"

There's a LOT, that you all can contribute to this project! Since it's my first GUI Application, and it's in its pre-release, I'd be more than grateful if you could list out any of the bugs/issues you found by raising an issue.
For more:

  • You can contribute to the README.md (beautify or elaborate it maybe?
  • Make changes for a better and cleaner code. (This is my first time so I had tried my best to code clean!)
  • Suggest features that can be later added.

That wraps up almost everything I wish to explain and tell about the Pomodoro Timer! I hope you had enjoyed reading, understanding the code, and most importantly using the application itself!