Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
July 19, 2021 09:11 am GMT

Create a simple pomodoro timer in python

Hey

If you're looking for a pretty useful yet simple python project, you've come to the right place!

For those who don't know what a pomodoro timer is:

A pomodoro timer is a special type of timer used to increase productivity.
It works something like this:

  • A pomodoro timer will give you ~25-30 minutes to work, then once you've finished working (thus completing 1 pomodoro), it will give you ~10 minutes to rest, then the timer will repeat the process.

To get started with making a pomodoro timer in python, you'll first need to install the "plyer" library by running pip install plyer or pip3 install plyer.

Then import these 2 libraries at the beginning of your python file:

import timefrom plyer import notification

Next, define the variable which will represent the amount of pomodoros completed by the user, as well as an indicator that the pomodoro timer has started:

import timefrom plyer import notificationcount = 0print("The pomodoro timer has started, start working!")

Now let's make the actual timer!

First, you'll need to put the timer in a while True: loop nested inside an if __name__ == "__main__": statement (if you're not familiar with it, here's a good explanation: https://stackoverflow.com/questions/419163/what-does-if-name-main-do):

if __name__ == "__main__":    while True:

Next, make the first notification function which will notify the user when they've finished a pomodoro:

if __name__ == "__main__":    while True:        notification.notify(            title = "Good work!",            message = "Take a 10 minute break! You have completed " + str(count) + " pomodoros so far",        ))

As you can see, this "notify()" function notifies the user that he/she has finished a pomodoro, and it indicates how many pomodoros the user has finished so far with the "count" variable.

Next, you'll need to create the "notify()" function which will notify the user once his/her 10 minutes of break time are over:

if __name__ == "__main__":    while True:        notification.notify(            title = "Good work!",            message = "Take a 10 minute break! You have completed " + str(count) + " pomodoros so far",        )        notification.notify(            title = "Back to work!",            message = "Try doing another pomodoro...",        ))

Your pomodoro timer is almost finished!

The only things left to do are:

  • Set timeouts between the "notify()" functions.
  • Increment the "count" variable every time the user finishes a pomodoro.
if __name__ == "__main__":    while True:        time.sleep(1800)        count += 1        notification.notify(            title = "Good work!",            message = "Take a 10 minute break! You have completed " + str(count) + " pomodoros so far",        )        time.sleep(600)        notification.notify(            title = "Back to work!",            message = "Try doing another pomodoro...",        )

Let me explain:

  • The first "time.sleep()" function waits 30 minutes(1800 seconds) before displaying the first notification, then before displaying the notification, the "count" variable is incremented since 30 minutes have passed, meaning that the user has done one pomodoro!
  • Finally, the second "time.sleep()" function waits 10 minutes(600 seconds) before notifying the user that his/her 10 minute break is over.

There you have it!

If you put everything together, your pomodoro timer should look something like this:

import timefrom plyer import notificationcount = 0print("The pomodoro timer has started, start working!")if __name__ == "__main__":    while True:        time.sleep(1800)        count += 1        notification.notify(            title = "Good work!",            message = "Take a 10 minute break! You have completed " + str(count) + " pomodoros so far",        )        time.sleep(600)        notification.notify(            title = "Back to work!",            message = "Try doing another pomodoro...",        )

Get the hottest programming stuff of the week in your inbox every Friday via my newsletter!

Byeeeee


Original Link: https://dev.to/code_jedi/create-a-simple-pomodoro-timer-in-python-l97

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To