Hi to all,
You’re here today to hear about this new application that we’ll be building during the next few months.
F# Background
I’ve been introduced to F# by my old mentor during an internship back in 2016 and had the chance since then to work on multiple projects with it on projects such as
- Leading a project where I integrated new hardware to use plate recognition in an Access Control software as a credentials
- Built a non-finished game library for a tactical role-playing game
- Built an automation tool generating custom UIs in WPF. It automated 89% of the grunt work and saved a total of 500 hours
- Built a custom performance logger for .NET framework applications
- Built a small e-commerce demo with F# and SAFE for 2 tech talks
I’ve had the chance to mentor a few developers to F# directly and I have given a few tech talks on functional programming using F# as a language.
The Idea
Let’s start with me saying for only that one time that I’m a sports and fitness enthusiast. Okay, I’m done now. You’ll never hear it again. Due to the passion I’ve mentioned earlier, I look for apps that could be beneficial for me. The problem with that is that the current market is flooded with apps and they’re either not a great fit (pun non-intended) or you got to pay for them which is just a no-no for me.
I’m the kind of individual that likes a challenge and I’ve challenged myself to build a free application with premium features. Here’s a small non-exhaustive list of features that will be in the platform:
- Users can find pre-defined workout sessions to watch on the application
- Workouts can be based on the number of workouts for a week
- Workouts can be based for those who only have a short period in a given day to train (10, 12, 15 min)
- Workouts can also simply target either lower-body, upper-body or full-body
- Workouts can target general goals such as fat burning or muscle growth
- In a workout, users will be able to choose one of the following:
- Few repetitions and heavyweights
- Using only their body-weight for their routine
- Fatiguing their muscles with pyramid repetitions
- Quickly and efficient workouts with super-sets
- Varying the exercises of a routine to keep their body challenged
- Choosing which part of the body to focus on such as a full-body workout with an emphasis on the torso
- As a registered user, I can keep track of the custom workout lists that I create based on the videos that I like
Goals
In the process of building Spartan-Fhiit, I also wanted to write feedbacks on my journey to reflect on:
- Developing a keen eye to craft better user interfaces and visualizations
- Getting more comfortable with the React ecosystem
- Getting to know the principles of system design for large-scale applications
- Getting to know about containerization and deployment
Hopefully, this series may spark your enthusiasm and bring new software to life.
Topics
In this series of Building a production-ready full-stack web application with SAFE, I will talk about the items in my goals such as how the system was designed or the strategy I select for continuous integration or what specific aspects of a React features made me say yes, this makes sense.
Now that this is all set, for those who aren’t familiar with F# or SAFE for that matter, I suggest visiting the following links:
The next step will be discussing the design we’ll put in place to build such an application. Stay tuned 🙂
Kevin
Leave a comment