Giter Club home page Giter Club logo

blueswimmer's Introduction

Blue Swimmer

React Native interface for swimmers to contribute data on mobile.

See the Blue Coach for more information

blueswimmer's People

Contributors

blakeworsley avatar rossedfort avatar

Watchers

 avatar

blueswimmer's Issues

A Swimmer can Login - Happy Path

As a Swimmer, When I visit a 'login' page
I should see a form with 2 required fields

  • username (or email address)
  • password

If I have an account with the app and submit the right credentials, I should be logged in and redirected to a dashboard page

Hook up React Native app with Firebase app

Integrate the existing react native app created in #1 with the firebase app created in #2.

Acceptance Criteria

  • Necessary packages are installed in the react native app
  • Necessary code is added to instantiate the firebase instance in the react native app.
  • You should be able to hit the firebase database from the react native app

References

Create React Native App

Read and start up react native app

Using http://facebook.github.io/react-native/docs/getting-started.html as a guideline, create a 'Hello World' react native app. This app does not need to be styled in any way, nor does it need to display any data. The landing page created by react-native-cli will be enough

Acceptance Criteria

A Swimmer can log data about a session

As an authenticated swimmer
I should see a navigation option to 'log data' (or something similar)
Clicking this should take me to a new page with 3 fields
I can fill out a minimum of 1 star and maximum of 5 stars for each field
I can submit the data via a submit button
It will be stored in the database

Accpetance Criteria

  • A training session can be stored for an authenticated user
  • Multiple sessions per day can be stored

A Swimmer can visit the register page and sign up for an account

As a Swimmer
When I navigate to the register page
I see a form to sign up to use the app
The form contains 5 fields

  • First Name
  • Last Name
  • Email Address
  • Password
  • Team Name

Once I fill out all of these required fields, I click Submit, I am redirected to a login page

Acceptance Criteria

  • Above user flow is met
  • Page is styled according to wireframes
  • dependent upon #7

A Swimmer can Login - Sad Path

As a Swimmer, When I visit a 'login' page
I should see a form with 2 required fields

  • username (or email address)
  • password

If I don't have an account with the app and submit credentials OR I do have an account but submit the wrong credentials, I should remain on the login page, and see a notification saying my credentials were incorrect

A user can be stored in the database

A swimmer object is stored in the database after they click the 'submit' button on the register form

Points to Consider

  • What do you want the data base structure to look like?
  • If swimmers belong to teams, maybe there should be a wrapper object for each team
  • something like /teams/{teamName}/swimmer/{swimmerId}

Create a Firebase App

Firebase will be the back-end of the application. We will use it for Authentication and Data Storage. Both coach and swimmer apps will use this database via an API

Acceptance Criteria

  • A Firebase app exists in your account for use with blue-swimmer and blue-coach
  • The app is set up with authentication and a real-time database

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.