A Financial Literacy App that rewards users for curiosity and completing learning modules.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Before you begin, ensure you have met the following requirements:
- You have installed the latest version of npm and node
- You have installed Expo
Fork this reposity and clone to your local machine.
There are two repos inside the InSight's root repository - app and server. Inside each of these run:
npm install
Run start in the app root to start the client
npm start
For local database testing, we use MariaDB and have seed data to populate on start. You will need MySQL installed locally, and a .env file with appropriate variables:
host = 'localhost'
dialect = 'mariadb'
database = 'Insight'
port = 3306 //(typical mysql port)
user = YOURUSERNAME
pwd = YOURPASSWORD
The client side app also needs a .env file with the following variables.
andriodId='1234.apps.googleusercontent.com';
iphoneId='1234.apps.googleusercontent.com';
deployment=localhost
The androidId and iphoneId are the google client IDs for the google authentication and will need to be acquired from Google's developer console by making a new project and creating new OAuth client IDs.
The deployment variable is the location of your running server, whether that's localhost (see note at the bottom), tunneling, or have a deployed server with an IP address.
- 3 folders in here: fonts, icons and images
- This is where we place all our shared React components. Usually these components are the ones that we call stateless or function components, that have no state logic and can be easily reused across the app.
- These are our application screens, the ones that we navigate from one to another.
- These are the functions that wrap the API calls.
- React-Native - The mobile framework used
- Expo.io - Dev tools
- Jest - Testing library
- MariaDB - Database Manager
- D3 - Used to generate visual data graphs
Only IOS through Xcode can connect to localhost without tunneling. Running the Android Studio emulator or the Expo app will require either tunneling or deployment of the server.
Titus | Amber | Brandon | Eliott |
---|---|---|---|