Code Monkey home page Code Monkey logo

exercisepedia-iphone-app's Introduction

Gym App

WorkoutTracker

Table of Contents

  1. Overview
  2. Product Spec
  3. Wireframes
  4. Schema
  5. Progress

Overview

Description

The WorkoutTracker app will allow users to create an account where they can login and see a list of workouts along with instructions on how to complete them and how many calories are burned with each workout. It can also keep track of which workouts are completed.

App Evaluation

[Evaluation of your app across the following attributes]

  • Category: Fitness
  • Mobile: This app is designed to be used on mobile devices although it would be possible to expand the platform to allow users to view their data on other devices
  • Story: Users to can create an account and view detailed instructions on how to complete specific workouts along with the ability to track their progress.
  • Market: Any Individual interested in working out.
  • Habit: This app as often or unoften as the user wants.
  • Scope: First we would start with a predetermined list of workouts. Then we could potentially broaden the scope of the project to suggest workouts based on previous user activity.

Product Spec

1. User Stories (Required and Optional)

Required Must-have Stories

  • User must have the ability to sign-in/create an account.
  • Upon login the user is presented with the main menu containing the following options: Account, Your Progreess, Workouts, Share, Logout.
  • User must have the ability to navigate between tabs (workouts/stats).
  • User can tap on a workout icon and transtion to the Workout Instructions page.
  • [5] User can view the workout details on the instructions page and have the ability to mark the workout as completed.
  • Upon completing the workout the user is returned to workouts page.
  • User can view stats related to their account on the stats page.
  • User can navigate to an Account Details Page from the main menu.
  • User can view details such as Name and phone number from the Account Details Page.

Optional Nice-to-have Stories

  • Ability to share progress to social media (ex: send out tweet)
  • Take into account past workouts to recommend users new workouts.

2. Screen Archetypes

  • Login Page
    • User must have the ability to sign-in/create an account.
    • Upon login the user is transitioned to a page with the list of workouts.
  • Workouts Page
    • User must have the ability to navigate between tabs (workouts/stats).
    • [4] User can tap on a workout icon and transtion to the Workout Instructions page.
  • Workout Instructions Page
    • User can view the workout details on the instructions page and have the ability to mark the workout as completed.
    • Upon completing the workout the user is returned to workouts page.
  • User Stats Page
    • User can view stats related to their account on the stats page.
  • Account Details Page
    • User can navigate to an Account Details Page from the main menu.
    • User can view details such as Name and phone number from the Account Details Page.

3. Navigation

Tab Navigation (Tab to Screen)

  • Main Menu Tab
  • Stats Tab

Flow Navigation (Screen to Screen)

  • Forced Login Screen -> Main Menu Screen
  • Main Menu Screen -> Workouts Screen
  • Main Menu Screen -> Account Details Screen

Wireframes

[Add picture of your hand sketched wireframes in this section]

Schema

Models

User

Property Type Description
userId String unique id for the user post (default field)
profilePicture Pointer to profile picture Points to image storage to retrive the user's profile picture
progress Pointer to User progress Points to model for User workout progress and stats
userName String user's username
phoneNumber String user's phone number
name String user's name

Progress/Stats

Property Type Description
author Pointer to User pointer to user model
Pointer to User progress Points to model for User workout progress
String image caption by author
Number number of comments that has been posted to an image
Number number of likes for the post
DateTime date when post is created (default field)
DateTime date when post is last updated (default field)

Networking

List of network requests by screen

  • Example Home Feed Screen
    • (Read/GET) Query all posts where user is author
      let query= PFQuery(className: “Search”) query.findObjectsInBackground { (posts: [PFObject]?, error: Error?) in if let error = error { 
          print(error.localizedDescription)
      } else if let searches = searches {
          print("Searched \(searches.count) searches.") request.httpMethod = “DELETE"Task.resume( )
          }               
          return         
      }
      

Progress

Sprint #1

For this week, we focused on adding the skeleton to the code base from a previously done project and we plan to work off of it to get our desired project we have a lot of pages to add and a database to perfect.There was a bug with the comment code, but we fixed it and have our database and login set up. Next week, we plan to get our pages added to the project.


Sprint #2

For this week, we focused on adding the pages and a menu to navigate across the app. So we continued working on from what we started with and made a lot of progress with the frontend portion of the application. The hard part will be the backend and getting the table views to cooperate and adding the assests. The basic structure of our project is almost built up, and all we need is to fill in the blanks. Next week, we'll continue on polishing the frontend part and begin looking into the table views and database. Along with figureing out a way of populating our database.

<br

Sprint #3

This week was the beginning for finals week for some of us and we were not able to get a lot of what we wanted done, but we did get a nice progress update with the progress, acount, menu, and login pages. The backend still needs some more tweaking, but once we have the table views done, we should be in the home strech.



Sprint #4

We made some progress, but personal trauma did hurt a little progress. We still continued to work together. We added more stuff to the workouts page and made progress there. That would only leave work for the share page.


exercisepedia-iphone-app's People

Contributors

felixr0 avatar sebasgomez238 avatar avecc003 avatar phil2k19 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.