Skip to content

Track your workouts, monitor your gains, and stay motivated with this easy-to-use habit tracking app for fitness enthusiasts.

License

Notifications You must be signed in to change notification settings

kevveth/LiftLog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LiftLog

The workout tracker built with you in mind – stay consistent and see results.

Motivation

LiftLog is designed for people who want a simple, no-nonsense way to log their workouts, monitor their gains, and stay motivated throughout their fitness journey.

Overview

LiftLog is a SwiftUI-based application designed to empower users to track their workout progress. Inspired by Paul Hudson's 100 Days of SwiftUI, this project aims to provide a user-friendly and customizable workout logging experience.

Current Features

  • Activity Creation: Effortlessly add new workout activities, including their name, completion count, and personal notes.
  • Progress Tracking: Track the number of times you've completed each workout and monitor your improvement.
  • Notes for Reflection: Capture essential details, observations, or motivational thoughts about your workouts.
  • Data Persistence: Your workout data is safely stored using UserDefaults, ensuring your progress is preserved across app sessions.

Technical Highlights

  • SwiftUI: Built with the declarative power of SwiftUI, providing a modern and intuitive UI development experience.
  • Navigation: Employs SwiftUI's NavigationStack and value-based navigation for seamless transitions between views.
  • Observation Framework: Leverages Apple's Observation protocol and the @Observable macro to efficiently react to data changes and update the UI accordingly.

Getting Started

  1. Clone the repository:
    git clone https://github.com/kevveth/LiftLog
  2. Open in Xcode: Open the LiftLog.xcodeproj file.
  3. Build and Run: Build and run the project on your iOS simulator or device.

Future Development (Planned)

  • Workout Routines: Implement the ability to create and manage structured workout routines.
  • Progress Visualization: Incorporate charts or graphs to visualize workout progress over time.
  • Advanced Data Storage: Explore alternative data storage methods like Core Data for more complex data relationships.
  • Set workout reminders or schedule workout sessions.

Contributions

Feel free to open issues to report bugs or suggest new features. To contribute code, please follow these steps:

  1. Fork the repository.
  2. Create a new branch with a descriptive name (e.g., feature-workout-routines).
  3. Make your changes and submit a pull request with a detailed explanation of the modifications.

Learning from 100 Days of SwiftUI

This project has been a fantastic opportunity to apply the concepts and techniques learned from Paul Hudson's 100 Days of SwiftUI challenge. It has solidified my understanding of SwiftUI's core principles, state management, navigation, and data persistence.

Let's Build Together!

I'm excited to continue developing LiftLog and welcome the collaboration of like-minded developers passionate about fitness and SwiftUI.

License

LiftLog is distributed under the MIT License. See LICENSE for details. 

About

Track your workouts, monitor your gains, and stay motivated with this easy-to-use habit tracking app for fitness enthusiasts.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages