FitGram Video Demo
Table of Contents
Overview
Description
This app lets fitness become more social with allowing you and your friends to see each other's workout and challenge them.
App Evaluation
- Category: Social Networking / Fitness
- Mobile: This app would be primarily developed for mobile but would perhaps be just as viable on a computer, such as tinder or other similar apps. Functionality wouldn't be limited to mobile devices, however mobile version could potentially have more features.
- Story: Analyzes users workouts. Allows the user or their friends to challenge them to a workout.
- Market: Any individual could choose to use this app, and to keep it a safe environment, people would be organized into age groups.
- Habit: This app could be used as often or unoften as the user wanted depending on how deep their social and fitness life is, and what exactly they're looking for.
- Scope: First we would start with having people sign up and add friends to see each others workouts and challenges. It can become larger as the app grows and might add a tab for fitness videos or keeping track of water intake.
Product Spec
1. User Stories (Required and Optional)
Required Must-have Stories
User logs in to app- User access previous workouts and preference settings
- User can add friends and challenge them to a workout
- User can see their workouts and their friends workouts.
- Profile pages for each user
- Settings (Accesibility, Notification, General, etc.)
Optional Nice-to-have Stories
- Fitness video tabs
- Water intake counter
- Streaks on workouts for the User
2. Screen Archetypes
- Login
- Register - User signs up or logs into their account
- Profile Screen
- Exercise Newsfeed Screen - User can view their workouts along with their friends workouts
- Challenge Screen - User can select a friend to challenge them on a workout.
- Settings Screen
3. Navigation
Tab Navigation (Tab to Screen)
- Exercise Newsfeed
- Challenge
- Profile -> Settings
Optional:
- Fitness Videos
- Water Intake Tracker
Flow Navigation (Screen to Screen)
- Forced Log-in -> Account creation if no log in is available
- Challenges -> Challenges a friend with a subview ontop
- Profile -> Settings
Wireframes
[BONUS] Digital Wireframes & Mockups
[BONUS] Interactive Prototype
Schema
Model
Propery | Type | Description |
---|---|---|
objectId | String | unique id for the user post (default field) |
author | Pointer to User | image author |
updatedAt | CalorieCount | calories after last excercise |
author | Pointer to User | image author |
competition | Boolean | whether won or lost challenge excercies |
Networking
- Get calores burned
- Get distanceWalkingRunning
- Get heartRate
let infoToWrite = Set([
HKObjectType.quantityType(forIdentifier: .activeEnergyBurned)!,
HKObjectType.quantityType(forIdentifier: .distanceWalkingRunning)!,
HKObjectType.quantityType(forIdentifier: .heartRate)!,
HKObjectType.workoutType()
])
healthStore.requestAuthorization(toShare: infoToWrite,
read: infoToRead,
completion: { (success, error) in
self.delegate?.workout(manager: self,
didAuthorizeAccess: success,
error: error)
})
} else {
healthStore.requestAuthorization(toShare: infoToWrite,
read: infoToRead,
completion: { (success, error) in
self.delegate?.workout(manager: self,
}
Video Progress
- App Demo
- Sign UP
- Login
- Multiple View Controllers
- Multiple View Controllers