Skip to content

Michaelcraun/WERKOUTZ

Repository files navigation

WERKOUTZ

WERKOUTZ is a SwiftUI iOS workout tracker for logging exercise history, tracking personal bests, and building a custom exercise list backed by Firebase.

Overview

The app is built around a simple workflow:

  • browse your saved exercises
  • open an exercise to view training history
  • add a new record for either duration-based or weighted exercises
  • create custom exercises and optionally attach a photo

Exercise metadata is stored in Cloud Firestore, exercise images are stored in Firebase Storage, and users are signed in anonymously with Firebase Auth.

Features

  • SwiftUI-based iOS app
  • Exercise list with best-result summaries
  • Support for two workout types:
    • duration
    • weighted
  • Per-exercise history view
  • Add new workout entries
  • Create custom exercises
  • Search existing exercises before creating duplicates
  • Optional photo upload from the camera or photo library
  • Anonymous Firebase authentication
  • Firestore snapshot listeners for live updates

Tech Stack

  • Swift 5
  • SwiftUI
  • Xcode project with CocoaPods
  • Firebase Auth
  • Firebase Firestore
  • Firebase Storage

Requirements

  • macOS with Xcode installed
  • iOS 14.0+
  • CocoaPods
  • A Firebase project configured for:
    • Authentication
    • Cloud Firestore
    • Cloud Storage

Getting Started

  1. Clone the repo.
  2. Install CocoaPods dependencies:
pod install
  1. Open WERKOUTZ.xcworkspace in Xcode.
  2. Add your own Firebase config file at WERKOUTZ/GoogleService-Info.plist if needed.
  3. Make sure Firebase Anonymous Auth, Firestore, and Storage are enabled in your Firebase project.
  4. Build and run on a simulator or device.

Data Model

Exercise

  • name
  • type
  • optional image stored in Firebase Storage

Record

  • date
  • exercise reference
  • duration or reps and weight
  • user reference

User

  • list of exercise references

Project Structure

WERKOUTZ/
├── WERKOUTZ/
│   ├── Controller/
│   ├── Model/
│   │   └── Firebase/
│   ├── View/
│   │   └── Cell/
│   ├── Extension/
│   └── WERKOUTZApp.swift
├── WERKOUTZTests/
├── WERKOUTZUITests/
├── Podfile
└── WERKOUTZ.xcworkspace

Current State

This repository appears to be an early-stage personal project / prototype. The core logging flow is present, while some areas such as dedicated login/signup UI and record editing are still stubbed out.

License

No license file is currently included in this repository. Add one before publishing if you want to make reuse permissions explicit.

About

SwiftUI iOS workout tracker with Firebase-backed exercise history, personal records, and custom exercise creation.

Topics

Resources

Stars

Watchers

Forks

Contributors