A key part of developing a good fitness routine is creating a solid workout plan and tracking your progress. Mobile apps can help by providing readily accessible programs specifically designed to support the user's fitness goals. In a world of fitness wearable devices like FitBit, there are plenty of proprietary apps designed to work with those specific devices. These apps certainly provide a lot of detailed tracking information, but they are not open source, and as such, do not necessarily respect the user's privacy and freedom to use their own data as they wish. The alternative is to use open source fitness apps.
Below, I take a look at six open source fitness apps for Android. Most of them do not provide super detailed collection of health data, but they do provide a focused user experience, giving the user the tools to support their workouts or develop a plan and track their progress. All these apps are available from the F-Droid repository and are all licensed under the GPLv3, providing an experience that respects the user's freedom.
HIIT Timer is a simple app designed to work as a timer for interval training. Users can creating trainings that consist of one or more rounds, which consist of a "work" and "rest" phase. Each phase is measured in seconds, so to create a five-minute "work" period followed by a one minute "rest," the user would put 300 in the first entry and 60 in the second. The app allows for multiple training sessions, so the user is free to set up a wide variety of trainings to suit different needs.
The only usability caveat is having to use a long press to open a menu in order to start a timer. By default, tapping on a fitness plan opens the plan for editing. A tip dialog box explains that the user can tap "New Training" to create a new training and that long pressing on an item opens an item's context menu with "Edit," "Delete," and "Start" options, but that dialog can be dismissed with a "Don't show again" option. Even if the user does not miss the tip by permanently dismissing it, the behavior seems backwards.
Open Training is a tool for creating and tracking exercise routines. Despite image of the runner on the home screen, Open Training is mostly geared toward weight lifting exercises. Users can create a workout by selecting exercises from a very long list of choices. To narrow down selections, the list of exercises can be filtered by muscle group and the type of equipment used, including "none" for exercises that do not need any special equipment. Exercises can easily be added to Open Training using the "create exercise" option (the +) when editing a workout. Users can add any exercise they want by entering a name, description, providing an image, and selecting applicable muscle groups and required equipment.
Open Training can track repetitions when exercising and even notify the user when their rest period is over, but it many cases that might be a little awkward. Resting between repetitions is a good thing, and the app's notifications that the rest period is over are useful, but reaching for a phone in between reps of some exercises in order to immediately record the completion of a repetition and trigger the rest period countdown is not something that every user is going to want to do. That said, Open Training is still very helpful for tracking workouts, even if all the tracking is done after the workout is completed.
Designed for various forms of cardiovascular exercise, RunnerUp can track a user's running, biking, walking, and orienteering workouts, or use a generic "other" category to track different exercise types. RunnerUp uses GPS to track workouts in each of the three main modes—basic, interval, and advanced. The basic mode simply keeps track of your distance travelled with the option of tracking the users target pace or heart rate. Interval mode allows the user to set two different times or distances, one for interval and one for rest, and select a number of times to repeat the cycle. Users who need more flexibility can used advanced mode to create a more complex workout plan with much finer control over the timings of high intensity periods and rests. On phones without GPS, users can use manual mode to enter a log of their exercise.
While not as tightly integrated with various wearables and social sites as the various proprietary fitness apps, RunnerUp is designed to work with various types of heart rate trackers and can connect to a variety of sites. The app can connect to Bluetooth SMART (BLE), Zephyr, Polar WearLink, and ANT+ Bluetooth-based heart rate monitors. There are 15 different options for connection to social sites, ranging from Facebook to specialize running sites like MapMyRun.
Looking for a quick workout? Seven is the app for you. This app, which is listed in the F-Droid repository under its German name, Sieben, is designed to provide a basic, well-rounded workout in seven minutes. With an mix of simple cardio and strength training, this app provides a workout that can be done just about anywhere, making it a great choice for travelers looking for something they can do in their hotel room when they travel.
The full exercise routine consists of jumping jacks, wall sits, push ups, abdominal crunches, step ups on a chair, squats, triceps on a chair, planks, high knees running in place, lunges, push ups with rotation, and side planks. During the workout, the app announces the name of the exercise and displays an illustrated example of the exercise alongside a countdown timer. Any of the exercises can be disabled to create a shorter, more customized workout.
Strykur, which the app explains is the Icelandic word for strength, is a digital log book for tracking your workouts and stats, such as weight, body fat, and various measurements. The default exercises are focused on strength training, with a single muscle group being the primary categorization method for the exercises, but the customization option does allow for more varied options. Custom exercises can even be based on distance or time, so exercises like running can also be added to routines and tracked.
Strykur's measurements feature is something that could useful for all fitness users, even those not interested in tracking the specifics of their workouts. This part of the app helps the user track their weight, body fat, and chest, shoulders, arms, and waist measurements. Custom measurements can also be added if the defaults are not enough. Each of these measurements shows a line chart detailing changes to the stat over time. If a user is trying to lose weight or trim inches off their waistline, this app provides a useful visualization of progress towards their goal.
SWJournal is a bare bones workout journal designed to do one thing well without being bogged down with tons of extra features. This is a both a good thing and a bad thing. There are no default exercises, so the user is free to enter whatever exercises they wish, but SWJournal is so focused that it is designed only for exercises that use "weights" and "reps" as the measurements. Beyond a generic notes field, "weights" and "reps" are the only information that can be entered for a workout. In addition, the reports generated by SWJournal are based on those same fields. So while it is possible to include other forms of exercise in the journal by repurposing those fields for other uses, it is impossible to generate a usable report. That is disappointing, because the report feature in SWJournal does generate useful tables and charts, and the time ranges covered by the reports can range from one month to two years, giving a focused picture or a broad overview of a user's workout history. SWJournal does what it does well, but adding a few more fields, such as "time" and "distance," would make this already nice app so much better.