Skip to content
This repository has been archived by the owner on Sep 13, 2020. It is now read-only.
/ sorted Public archive

Orbital 2020 project by Kim Tae Kwon and Kim Sangwoo

Notifications You must be signed in to change notification settings

ktaekwon000/sorted

Repository files navigation

sorted

A diary app built for your emotions. Available only for Android.

Built with React Native, Firebase and Google Cloud.

Emotion Identification powered by torchMoji, a pyTorch implementation of the DeepMoji model developed by Bjarke Felbo, Alan Mislove, Anders Søgaard, Iyad Rahwan and Sune Lehmann. Check out their paper and demo. A fork of torchMoji, adapted for use in Google Cloud Functions, was used for this project. Check it out here.

Testing implemented with Cavy.

Poster Image Orbital 2020 project by Kim Tae Kwon and Kim Sangwoo

The following are links to Milestone 3 documents:

README Poster Video
Google Docs Image Youtube

Installation

  1. Clone the repo.
  2. Rename firebase/funcions/example.apiURL.json to apiURL.json.
  3. Set up API for emotion analysis over at torchMoji-cloudfunction and copy the endpoint URL into apiURL.json.
  4. Rename the file config/Firebase/example.firebaseConfig.js to firebaseConfig.js and replace with own keys.
  5. Follow instructions in firebase to set up firebase cloud functions.
  6. Run npm start then connect using Expo app.

Testing

  1. Create a user with credentials cavy@example.com and password. Make a sample post under that account, with the content I am happy. I am also angry..
  2. Change global.isTestingEnvironment in CustomRootComponent.js to true.
  3. Clear the app data of the Android Expo client. (This is optional, but often trying to work around this will cause crashes and errors.)
  4. Run npm start and connect a device using the Expo app. If any tests fail, they will show up as yellowboxes on the Expo client. An object representing the full report of the tests will be printed to the console after the tests.
  5. Before restarting the app, remember to change the global variable global.isTestingEnvironment back to false.

Note: The timeouts within the tests are hardcoded, based on the performance of my own test device (Galaxy S6, a high-end device from 2015) and my network speeds. If you experience cavy attempting to run tests before the elements/UI have appeared, you might have to increase these timeouts in specs/specs.js.

Credits

Login starter kit from expo-community/expo-firebase-starter

About

Orbital 2020 project by Kim Tae Kwon and Kim Sangwoo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published