Giter Site home page Giter Site logo

bikelocker-spring-2019's Introduction

BikeLocker

Project Description

BikeLocker is an iOS app created for the modern city biker. It will help you find and share information about bike parking around town. The information provided is from the Police Department of Vancouver as well as from the biking community itself. As a user, you can check where there are lockers available, whether they have been reviewed by other users and how safe it is to leave a bike there. You can also add new bike parking spots or add your review to existing ones.

App Demo

BikeLocker Demo

About the Authors

Nancy Chu holds a BS in Mechanical Engineering from UBC and is an experienced in the robotics industry. She was the project manager in this project, responsible for the roadmap, backlog and sprints planning on ZenHub, plus a great portion of the code, especially the GraphQL backend on GraphCool.

Gavin Jin is a talented developer, constantly seeking new technologies to learn. More recently, he is diving into blockchain technologies. He loves using Javascript, React, React Native and CSS. In this project, he mainly contributed to the backend in GraphQL and the CRUD for the bike lockers.

Jeremiah Aguirre is a skilled developer and web technologies Teaching Assistant. He enjoys working in a team and always likes to learn new things. Some of his favourite languages are React, React Native, Javascript and PHP. For this project he mostly worked on integrating Google Maps with customized app pins and the user on-boarding screens, having contributed to the other parts as well.

Andre Moura an experienced Product Manager working in the Tech Industry. He was responsible for the app structure and navigation, as well as the CRUD for the user profile information.

Technologies Used

  • React Native
  • Apollo
  • GraphQL
  • AsyncStorage
  • XCode
  • Google Maps API

Instructions for Running

Installation

Install dependencies:

cd server
yarn
cd client
yarn

You will also need to install Podfiles for Google MapView


  • Navigate to:
client/ios
  • And run:
 pod install

Run iOS simulator

cd client
react-native run-ios

bikelocker-spring-2019's People

Contributors

amarquesmoura avatar ghsyeung avatar jeremiahaguirre avatar jingavin avatar nancychuchu avatar siddharthparmar7 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

bikelocker-spring-2019's Issues

Create profile screen

Add profile screen

  • Show current users profile
  • Edit current users about section
  • Edit current users contact info

Style Add a Locker Modal

Create Presentation side of Add a Locker Modal

  • Correctly display added photos (adjusting add photo button)
  • Display rating as locks
  • Correctly styled form and buttons

User Auth Flow

User auth flow:

  • Create a Backend To support your auth flow
    • Use GraphCool
  • Login
    • Create UI
    • Connect UI to Backend Logic
    • User input validation
  • Register
    • Create UI
    • Connect UI to Backend Logic
    • User input validation

Create global styles theme

Create global styles theme

  • Add standard fonts, colours, spacing, links, buttons, etc.
  • Create global Text component and others that are extensively used.

Create Auth

Creating Authentication Process

  • Create Account & Login
  • Send and Retrieve Data

Create Resources screen

Create Resources screen

  • Use a presentational component
  • Populate it with give copy and links

Locker modal navigation

Locker modal navigation

  • Open modal in half view and then add arrow button so that it pulls to full view with slide up animation
  • Pass in data from MapView pins

Create Locker Info Modal

Create Locker Info Modal

  • Implement slide from bottom
  • Read data from database (reviews - show average)
  • Implement Directions button with link to 3rd party map app

Implement avgRating calculation

Implement avgRating calculation

try to implement the avgRating calculation as a function in the server side with graphcool. Failing that, implement it on the client side.

Perform code clean up

Perform code clean up

  • Check that all components have the proper PropTypes
  • Remove commented code
  • Remove unused imports
  • Remove console.logs and other unnecessary code

Create Reviews Modal

Create Reviews Modal

  • CRUD: Update database
  • FORM: Text input for review
  • Locker rating
  • Add Photo (RN image picker)

Add OnBoarding

Three Paged Modal

  • Creating modals (3x)
  • First Login only

Add README

Add a README file

  • add project description
  • add authors
  • add technologies used
  • add installation steps
  • add screenshots (GIFs)

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.