Skip to content

My cs50 final project which is an web application(Now WEB DEV signing off!!)

Notifications You must be signed in to change notification settings

DAKMAK2006/CS50FinalProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gym Guide

Description:

Gym Guide is a web-based application designed to help fitness enthusiasts effectively track their workouts while staying motivated. This project is my CS50 final submission, showcasing the skills I’ve learned throughout the course.

Key Features

  1. User Authentication:

    • Users can register and log in securely with their credentials.
    • A logout button ensures easy session management.
    • A button for changing the user's password.
  2. Dashboard:

    • The central hub where users can manage their workouts.
    • Includes a dynamic table displaying workout details: Day, Exercise, Sets, Weight, and Reps and also an option to remove these exercises.
  3. Add Exercise:

    • An intuitive form that collects workout details and updates the dashboard upon submission.
    • Ensures user inputs are validated before storing them in the database.
  4. Creative Enhancements:

    • Motivational Quotes: Random quotes, including popular anime-inspired ones, appear to keep users energized.
    • Spotify Playlist: An embedded playlist lets users play workout music directly from the app.

Technologies Used

  • Flask and Python: Backend framework and language for routing, database management, and logic.
  • SQLite: Database to store user and exercise data.
  • HTML, CSS, Bootstrap: Frontend technologies for responsive and stylish design.
  • JavaScript: Enhancing interactivity, such as dynamic table updates.

Project Files

  • app.py: The core backend logic, including routes for user authentication, exercise management, and session handling.
  • templates/: Contains all HTML templates such as the dashboard, login, and registration pages.
  • static/: Holds CSS and JavaScript files for styling and interactivity.
  • README.md: This documentation file explaining the project.
  • gymguide.db: The SQLite database storing user credentials and workout data.

Design Decisions

One of the key decisions was to focus on simplicity and motivation. Fitness apps can become overwhelming, so I aimed to design an interface that is clean, functional, and inspiring. I debated between using an external API for quotes but opted to hardcode them to ensure quick loading and relevant content. Embedding a Spotify playlist was a creative touch, adding real value to the user experience.

Challenges and Learnings

This project taught me how to balance backend logic with frontend design. Ensuring a seamless user experience while managing session data securely was a valuable lesson. Choosing colors, themes for the webpages and quotes for challenging but rewarding.

Thank you for reviewing my project, and I hope Gym Guide encourages more people to stay fit and healthy!

About

My cs50 final project which is an web application(Now WEB DEV signing off!!)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published