⚠️ This project is archived and no longer supported. Associated Heroku deployment and Firebase DB have been removed.
Expensify app that is developed in scope of Udemy The Complete React Developer Course (w/ Hooks and Redux) course.
- React
- Redux
- Webpack
- Jest
- Babel
- Firebase
- SCSS
git clone git@github.com:fabasoad/expensify-app.git
cd expensify-app
yarn install
yarn test
yarn run start:dev
Go to http://localhost:8080/ and be sure that app is running.
- Create 2 new applications in Firebase (test and development).
- Turn on Google Authentication in each project.
- Create a Realtime-Database with the following rules in each project:
{
"rules": {
".read": false,
".write": false,
"users": {
"$user_id": {
".read": "$user_id === auth.uid",
".write": "$user_id === auth.uid",
/* Insert project specific fields validations here */
"$other": {
".validate": false
}
}
}
}
}
- Create 2 files in a root of a project with the following names:
.env.test
- contains database settings for automation tests purposes..env.development
- contains database settings for development purposes.
Example of .env.*
file:
FIREBASE_API_KEY="some-key"
FIREBASE_AUTH_DOMAIN="project-id.firebaseapp.com"
FIREBASE_DATABASE_URL="https://project-id.firebaseio.com"
FIREBASE_PROJECT_ID="project-id"
FIREBASE_STORAGE_BUCKET="project-id.appspot.com"
FIREBASE_MESSAGING_SENDER_ID="1234567890"
FIREBASE_APP_ID="app-id"
FIREBASE_MEASUREMENT_ID="some-id"
- Install Heroku CLI.
- Run the following commands:
git clone git@github.com:fabasoad/expensify-app.git
cd expensify-app
heroku login
git remote add heroku https://git.heroku.com/fabasoad-expensify.git
git push heroku master
- Go to https://fabasoad-expensify.herokuapp.com/ and be sure that up-to-date version of an app is deployed.