A fully-customizable weightlifting tracking app.

Related tags

Templates BlockLifts
Overview

BlockLifts Weightlifting App

A fully-customizable weightlifting tracking app and my introduction to Dart/Flutter.

Features

  • Create an unlimited amount of workouts
  • Create an unlimited amount of exercises, including accessory exercises (think pull-up, curl)
  • Fully customize each workout with any number of exercises in any order, and reorder at any time
  • No more mental math: the app determines which plates to add to each side of the bar
  • Timer between sets to let you know when it's time to resume
  • Set a workout schedule; the app will let you know which workout to do on which day
  • Customize the number of sets and reps for each exercise
  • Customize how much weight will be automatically added after each successful workout
  • Customize how much weight to remove after a certain number of consecutive failures
  • Add notes for each workout
  • Edit any previous workout
  • View progress for each exercise over time
  • Keep track of body weight over time
  • Calendar to visualize which days workouts have been completed
  • Dark mode and light mode

Backend

This app gave me great experience building a complex backend. I had never managed so much data in a single project before, so building all the features above was quite an accomplishment.

The bulk of the backend is built on a list of all workouts, a list of all exercises, a class for each workout, and a class for each exercise. The workout class must keep track of all exercises in the workout. The exercise class is the most complex: it must keep track of the number of sets and reps completed for that exercise for each workout session. It must also allow for future customization (like adding or reordering exercises), while still storing previous workout data. Imagine Workout A originally consists of squats and deadlifts, and you complete that once and later add bench press to the workout. The workout history screen must show Workout A in both states, with two and three exercises. This was one of the most difficult items to implement.

Preview

As I've noted, the UI has a lot of work remaining. Primarily, some screens are not yet built and the background theme is not yet implemented.

Home screen displays list of workouts, in order they are scheduled to be completed. Tap on any of them or click "Start Workout" to go to the appropriate workout screen.

image

Workout screen (incomplete, need to add header/footer and bodyweight button). Each circle represents a set, and the number represents the number of reps completed. Gray circles indicate the user has not yet started that set.

image

Reorderable list of workouts. Click on a workout or use the drop-down menu on the right to edit. image

Add a new workout. Checks for and does not allow duplicate names. image

Edit workout page displays list of exercises in the workout. Can reorder exercises or add new ones. image

To add a new exercise, you can create a custom one or select from any previously-created exercise. image

Fully customize every aspect of each exercise.

image

You might also like...

A fund tracking application built with Flutter.

A fund tracking application built with Flutter.

Fund Tracker A flutter application for budgets and keeping track of transactions. I built this because I couldn't find any application that allowed a

Sep 29, 2022

Keep tracking your prayers.

Keep tracking your prayers.

تطبيق قضاء Keep tracking your prayers. مميزات التطبيق v1.0.0 سهولة وبساطة الواجهة. مجاني وخال من الاعلانات ومفتوح المصدر. اشعارات محفزة عند قضاء كل يو

Dec 30, 2022

It's an open source project for the steps tracking (Pedometer) built with Flutter.

It's an open source project for the steps tracking (Pedometer) built with Flutter.

Flutter Steps Tracker It's an open source project for the steps tracking (Pedometer) built with Flutter and integrated with Firebase as the initial ba

Nov 5, 2022

(Full-stack) Fully functional social media app (Instagram clone) written in flutter and dart with backend node.js and Postgres SQL.

(Full-stack) Fully functional social media app (Instagram clone) written in flutter and dart with backend node.js and Postgres SQL.

Photoarc A Fully functional social media app written in flutter and dart using node.js and Postgres SQL as backend. Backend Repository Demo Download t

Jan 5, 2023

A fully functional social media app built with flutter with multiple features

A fully functional social media app built with flutter with multiple features

🔥 🔥 Wooble Social Media App Wooble is a fully functional social media app with multiple features built with flutter and dart. Star ⭐ the repo if you

Jan 3, 2023

Outlook Email App Redesign - Flutter Fully Responsive Design UI

Outlook Email App Redesign - Flutter Fully Responsive Design UI

Outlook Email App Redesign - Flutter Fully Responsive Design UI Watch it on YouTube Flutter web work on beta make sure you change your channel, Config

Dec 30, 2022

Fully customize & personalize news app, built with Flutter

Fully customize & personalize news app, built with Flutter

MyNews A fully customize & personalize news app, featuring world & local news, and top-headlines topics Screenshots Technologies Front-end Flutter SDK

Nov 2, 2022

Fully Functional IOS/Android App for WordPress Website with Flutter

Fully Functional IOS/Android App for WordPress Website with Flutter

WordPress App with Flutter IOS/Android Native App for WordPress Website/Blog built using Flutter. No additional Plugins required for WordPress. Built

Dec 30, 2022

Kenso - A fully functional social media app with multiple features built with flutter and dart

Kenso - A fully functional social media app with multiple features built with flutter and dart

Kenso - Social Media App Kenso is a fully functional social media app with multi

Feb 8, 2022
Comments
  • Store workout time even if app is quit

    Store workout time even if app is quit

    Store the start of the workout and compare current time to start time, by difference in minutes. Check this difference in a function when the app is opened and set the timer equal to the difference.

    enhancement Medium 
    opened by jakeump 0
Owner
Jake
University of Michigan student studying Computer Science
Jake
The easiest way to create your animated splash screen in a fully customizable way.

Animated Splash Screen Check it out at Pub.Dev Do it your way Assets image Custom Widget Url image IconData Or just change PageTransition and/or Splas

Clean Code 104 Nov 10, 2022
Onehour-app - A time tracking app build using Flutter

Onehour A time tracking app build using Flutter Screens First Header Second Header Tech Stack Flutter Flutter Bloc with Hydrated Bloc Firebase Admob F

Fayeed Pawaskar 157 Nov 10, 2022
This is a beautiful stocks tracking app, developed using Flutter.

Stocks Tracker App This is a beautiful stocks tracking app, developed using Flutter. Features Track any stock in BSE Search from any availble stock Be

Hash Studios 8 Dec 27, 2022
A digital diary and mood tracking app that helps you in keeping track of your mood and productivity throughout the month/year.

StarBook ✨ A digital diary that can help you in keeping track of your mood and productivity throughout the month. Mood tracker is a good way to see ho

Hashir Shoaib 73 Dec 23, 2022
App for tracking your expenses

Expense Manager App for tracking your expenses Purpose of the project This app may help people to control their spendings. My task was to create custo

Maksym Koriak 4 Mar 13, 2022
Cross-platform mobile app for tracking GPS with IoT technologies.

IoT Tracking Cross-platform mobile app for tracking GPS with IoT technologies. Table of Contents Introduction Requirements Installation Build & Run Kn

0xShikYe 4 Oct 2, 2022
Fitness Tracking App UI

Fitness Tracking App UI Support me on Patreon Watch on Youtube A new Flutter project. Getting Started This project is a starting point for a Flutter a

Syed Abdullah 11 Oct 27, 2022
A finance app tracking financial inventory.

flutter_fintech A Fintech App that keeps track of your personal Finances Getting Started Clone or Fork this project if you're seeking to learn how to

Chocolate Victor 7 Dec 29, 2022
Official Flutter Tracking Library for Mixpanel Analytics

Table of Contents Introduction Quick Start Guide Install Mixpanel Initialize Mixpanel Send Data Check for Success I want to know more! Introduction We

Mixpanel, Inc 46 Jan 4, 2023
A basic cryptocurrency price-tracking application using flutter

CoiCoin Cryto Tracker - Demo Product This is a basic cryptocurrency price-tracking application to the Demo Product on Google DevFest HCMC 2021. Google

Đỗ Trường Thịnh 2 Dec 9, 2021