DEV Community

Cover image for Top 11 Advanced Tkinter Projects You Should Try This Year
Khumbo Klein Chilamwa
Khumbo Klein Chilamwa

Posted on

Top 11 Advanced Tkinter Projects You Should Try This Year

Programming is cool and more rewarding at the same time when you have what clients are looking for. These days it is not all about talking alone but rather acting on the ground, that’s why clients are opting for developers with hands-on experience. So the best way to catch a client’s attention is to work on some cool projects using a particular tool and include those projects on your resume. Know this, there will never be the best way of convincing clients than having some advanced projects that you can show off on your resume. When I first started using Tkinter I was just creating some basic GUIs, like displaying text when a button is clicked, something that would not catch a client’s attention right? So I had to change the gears If I was ever to impress a client, so I found projects and started working on them one at a time. I have to admit that I did not finish all these projects in a single year but yeah I finished them. In this article, I will be sharing the 11 advanced Tkinter projects that I have successfully worked on in the past years, with these projects I strongly believe that you will master the framework and be able to build your own GUI applications that you can show on your resume.

Something worth mentioning here, I have just listed the projects randomly, the order in which they are listed does not in any way mean the project’s relevance and difficulty.

1. Age Calculator

Image description
The Age Calculator is simply an app that calculates your age, it takes your date of birth(day, month, year) as input and calculates your age. To build this app I used the ttkbootstrap and datetime libraries. The ttkbootstrap library helps you style your widgets in an advanced way using bootstrap styles and the datetime library is for working with dates.

2. Real-Time Currency Converter

Image description
A Real-Time Currency Converter is an app that converts currencies from a source rate to a destination rate. To successfully build this app you will need any free currency converter API(Fixer API, Exchange Rate API, Yahoo Finance API, etc), the tkinter, requests, and json libraries. The requests library is for sending a response to the API and the json library is for converting the response to JSON data.

3. Gender Predictor

Image description
The Gender Predictor app simply predicts the gender of a given name, it uses the genderize API and these 3 libraries tkinter, requests, and json.

4. Audio Dictionary

Image description
If you have ever fancied the idea to build a dictionary app with an audio feature, then this one is for you. With this project, you will use the PyDictionary library for finding the words meaning and the pyttsx3 library for converting text to speech. How this app works, the user will enter a word and search for its meaning then pronounce the found word.

5. Real-Time Spelling Checker

Image description
Don’t you want to build a real-time spelling checker, whereas you are typing your sentences in the scrollable text field the app will check in real-time for spelling errors. If this sounds cool, then this project is worth your attention this year. The libraries that you will need for this project are the tkinter, re, and nltk.

6. QR Code Generator and Detector

Image description
We all know that QR code technology is booming and that it is being incorporated with a lot of technologies like WIFIs, online payment systems, etc. Building your app that generates and detects QR codes would be a feat on its own. For this project, you will need these libraries, tkinter, cv2 for detecting QR codes, and qrcode for generating QR codes.

7. Voice Recorder

Image description
Another cool project to prove your skill is a Voice Recorder, this app records your voice for a specified amount of seconds, and after successfully recording the voice it is saved to a file for later use. The libraries required for this project are the sounddevice,, threading, datetime, time, and os.

8. PDF Viewer

Image description
Ever wondered how apps like Foxit reader or adobe reader work, in this project you will build your own PDF file viewer, and through this project, you will learn things like extracting data from a PDF document. The libraries you will need for this project are the fitz from PyMuPDF, tkinter, and os.

9. Language Translator

Image description
If you want to build your own language translator then try this project, by building this project you will learn a lot of programming concepts. You will get to design the snazzy GUI, and implement all the advanced features like voice, copy to clipboard, notifications, etc. The libraries used in this project are the ttkbootstrap, googletrans, pyttsx3, and pyperclip.

10. MP3 YouTube Downloader

Image description
MP3 downloader is an app that downloads for you MP3 files from YouTube videos and the required libraries for this project are tkinter, pytube, threading, and os.

11. YouTube Video Downloader

Image description
Building your video downloader like IDM would be worth it, and it’s a project that every developer would be proud of. In this project you get to build a YouTube video downloader, you will get to implement features like search resolution, display download progress on the progress bar, etc. The libraries needed are the tkinter, pytube, and threading.


I have only listed a few projects that I think will be of great use when it comes to mastering the Tkinter GUI framework, there are lots of cool projects that other developers have done, please check them out as well. A reminder, these are projects that I have worked on as an individual, and am not claiming they are the best, I only wrote this article to share what I have built using Tkinter. Thanks for reading!!

Top comments (1)

saboorhamedi profile image

It's quite amazing... I have built 2 of these projects, in three different versions, beginner, intermediate, and advance..

Also, is it possible if you could share the GitHub repositories to have a look...