DEV Community

aneeka Gupta
aneeka Gupta

Posted on

THE WEEKEND CHALLENGE

SportSync: A Simple Voice-Guided Sports Training Timer πŸ₯Šβ±οΈ

What I Built

For the DEV Weekend Challenge: Passion Edition, I built SportSync, a simple desktop application (can be converted into mobile application using React) that helps athletes stay focused during training sessions.

The idea came from a common challenge faced by many athletes: constantly checking the timer during workouts interrupts focus. SportSync acts as a personal workout assistant by guiding users through each activity with timed voice announcements, allowing athletes to concentrate on their training instead of the clock.

Although I initially designed the app with boxing in mind, it can be used for virtually any sport or fitness routine, including running, gym workouts, football, basketball, HIIT, and more.


Features

  • ⏱️ Custom workout timer
  • πŸ”Š Offline voice announcements for each activity
  • βž• Create and save personalized workouts
  • ▢️ Start, pause, resume, and skip activities
  • πŸ’Ύ SQLite database for storing workouts
  • πŸ“œ Workout history
  • πŸŒ™ Simple, clean, beginner-friendly interface

Built With

  • Python
  • Tkinter
  • SQLite
  • pyttsx3 (Offline Text-to-Speech)

How I Built It

Since this was a weekend challenge, I wanted to make the most of my limited time.

I started by using AI as a brainstorming partner to refine my initial concept into a realistic project that could be completed within the challenge timeframe. Together, we planned the core features, discussed the overall structure, and simplified the idea into a practical minimum viable product (MVP).

Once the planning was complete, I spent the day building the application in Python. I implemented the interface with Tkinter, added workout management and data storage using SQLite, and integrated offline voice guidance with pyttsx3. Throughout development, I also used AI to help troubleshoot bugs, explain unfamiliar concepts, and speed up debugging, while making the implementation decisions and integrating the features myself.

This project was a great example of using AI as a development assistantβ€”not to replace the coding process, but to accelerate planning, problem-solving, and learning.


Why I Built It

As someone passionate about both sports and technology, I wanted to create something that solves a real problem I experience during training.

Many workout timer apps are either too complicated or focused on a single activity. My goal was to build a lightweight, customizable training companion that athletes from different sports could use without unnecessary distractions.


Challenges

Some of the biggest challenges included:

  • Managing the timer logic smoothly.
  • Synchronizing voice announcements with each activity.
  • Organizing workout data using SQLite.
  • Keeping the interface simple while still being functional.
  • Completing the project within a single day.

What I Learned

This project helped me gain hands-on experience with:

  • Building desktop applications using Python
  • Designing user interfaces with Tkinter
  • Working with SQLite databases
  • Implementing offline text-to-speech
  • Structuring projects into modular components
  • Using AI effectively as a software development assistant

Future Improvements

Some features I'd love to add in future versions include:

  • Weekly training planner
  • User profiles
  • Workout analytics and streak tracking
  • Android version
  • AI-generated personalized training plans
  • Notifications and reminders

Demo

πŸŽ₯ APP Demo:
[% embed https://drive.google.com/file/d/1RccJ8JVQKoItM9NUIklOXWoKjSvEBU2y/view?usp=sharing]


Source Code

πŸ’» GitHub Repository:

πŸ₯Š SportSync

SportSync is a simple voice-guided sports training timer built with Python. It helps athletes stay focused during workouts by providing timed voice announcements, customizable workout routines, and workout trackingβ€”all in one lightweight desktop application.

Originally inspired by boxing training, SportSync can be used for any sport or fitness routine, including gym workouts, HIIT, football, basketball, running, cycling, and more.


✨ Features

  • ⏱️ Custom workout timer
  • πŸ”Š Offline voice-guided workout announcements
  • πŸ“ Create and save custom workouts
  • ⏸️ Pause, Resume, Skip, and Restart workouts
  • πŸ’Ύ SQLite database for storing workouts
  • πŸ“œ Workout history
  • πŸŒ™ Clean and beginner-friendly interface

πŸ› οΈ Built With

  • Python
  • Tkinter
  • SQLite
  • pyttsx3

πŸ“‚ Project Structure

SportSync/
β”‚
β”œβ”€β”€ main.py
β”œβ”€β”€ ui.py
β”œβ”€β”€ timer.py
β”œβ”€β”€ database.py
β”œβ”€β”€ voice.py
β”œβ”€β”€ requirements.txt
β”œβ”€β”€ README.md
└── database/

πŸš€ Getting Started

1. Clone the repository

git clone https://github.com/YOUR_USERNAME/SportSync.git
cd SportSync
Enter fullscreen mode Exit fullscreen mode

2. Install dependencies

pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

3. Run the

…

Thank you for taking the time to explore my project! I'm always open to feedback and suggestions, and I hope SportSync can continue to grow into a useful tool for athletes across different sports.

Top comments (0)