Flutter App: Couch-to-5k - part 2

 Used the following tutorial to build a count up time app: How to make a Button with a Timer in Flutter.

Using this app as the basis of a simple couch-to-5km app, I added an array of different times - to simulate running & walking cycles. You can see the basic updated app below.

Simple count-up app showing
different duration timers

The next steps are to:

  1. Display if the user is in running or walking phase
  2. Add additional tabs for each of the 9 weeks
  3. Refactor the app to extract repeated functionality
Phase 2 could include features such as:
  • Voice or vibration to notify the user of the transition between running and walking phase
  • Map showing the route that the run covered
  • Replaying previous runs in map view
  • Linking app to health tracking IoT device to display heart rate, etc.

Flutter App: Couch-to-5k

REBOOT

Re-starting the blog to keep a record of my attempts to re-learn how to program. My focus is on Flutter Framework using the Dart programming language to create apps.

Years ago I programmed in C & C++. Then I stopped and not continuing with programming is one of the biggest regrets of my career. And now it's 20223, there is a wealth of programming knowledge online, tools for free, and the only limit is time. 

I chose Flutter and Dart as I used to work in the mobile world a long time ago. Having done a bit of research on Android, iOS, and various cross-platform toolkits - I settled on Flutter & Dart as an easy way t quickly prototype apps. 

Currently I'm 30% through this course: Flutter & Dart - The Complete Guide [2023 Edition]. Now it's time to try to create my own apps (whilst still continuing with the course) as all the advice points to "try to build something, it does not matter what - just something all the way through".



App #1: Couch to 5K

My first app is going to be creating a variant of the "NHS Couch to 5K" app that helps people (like me) over 9 weeks go from being on the couch - to running 5 km in 30 minutes.

I'm in the process of breaking the building of this app in to a series of smaller steps (no pun intended). In all likelihood the app will not be completed - but it will be fun and hopefully educational to try.

Steps:

  1. Create simple count-up timer
  2. Add start, pause, and reset buttons
  3. Create circular count up animation
  4. Implement all the times for week 1 of couch to 5k (PDF created by NHS in UK) 
  5. Add indicator to show how many runs completed per week
  6. Implement remaining weeks 2 to 9
  7. Optional: Add metrics for distance travelled. 
  8. Optional: Add map showing route of past run
Fortunately there are already a number of very good guides that explain how to create a simple timer in Flutter - using the Timer class from Flutter.

Here is a list of some of the tutorials: