Skip to content

Refactored version of the official F8 app of 2016, powered by React Native and the Apollo Stack.

License

Notifications You must be signed in to change notification settings

nnance/f8app-apollo

 
 

Repository files navigation

F8 App 2016 - Apollo

This is a refactored version of the official F8 app of 2016, that uses the Apollo Stack. As part of the refactor I have made the following changes:

  • Removed the use of Relay on both the server and client.
  • Replaced the Parse client with the Apollo client for all the data loading.
  • Fully implemented all data requirements in the GraphQL server.

The implementation found in the master branch leaves the application architecture intact with the use of react-redux. There is a version of the app that uses react-apollo in the react-apollo-connect branch which is a WIP.

Requirements

  1. React Native (follow iOS and Android guides)
  • Xcode 7.3 +
  1. CocoaPods (only for iOS)
  • Version 1.0+ recommended (gem install cocoapods --pre)
  1. MongoDB (needed to run Parse Server locally)

Setup

  1. Clone the repo
$ git clone https://github.com/nnance/f8app-apollo
$ cd f8app-apollo
  1. Install dependencies (npm v3+):
$ npm install
$ (cd ios; pod install)        # only for iOS version
  1. Make sure MongoDB is running:
$ lsof -iTCP:27017 -sTCP:LISTEN

NOTE: if installed with Homebrew run brew info mongo and check out the Caveats section.

If you prefer to use an external MongoDB server, set DATABASE_URI:

$ export DATABASE_URI=mongodb://example-mongo-hosting.com:1337/my-awesome-database
  1. Start Parse/GraphQL servers:
$ npm start
  1. Import sample data (the local Parse Server should be running):
$ npm run import-data

Make sure everything works by visiting:

  1. Running on Android:
$ react-native run-android
$ adb reverse tcp:8081 tcp:8081   # required to ensure the Android app can
$ adb reverse tcp:8080 tcp:8080   # access the Packager and GraphQL server
  1. Running on iOS:
$ react-native run-ios

About

Refactored version of the official F8 app of 2016, powered by React Native and the Apollo Stack.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 95.9%
  • Objective-C 2.4%
  • Java 1.1%
  • Shell 0.6%