# Gangsta Readme ## First-time setup Install dependencies with `bundle install` and `yarn --cwd client install` (or enter client directory and execute `yarn install`) Build docker image with `docker build -t roraccounting .` ## Running Start docker container with Postgres DB (if not already running) : `yarn run dev-db` or `docker run --name gangstadb -d -p 5432:5432 -e POSTGRES_PASSWORD=docker -e POSTGRES_DB=roraccounting_development roraccounting` Start backend server : `BASIC_AUTH_USERNAME=user BASIC_AUTH_PASSWORD=pass yarn run server` or `BASIC_AUTH_USERNAME=user BASIC_AUTH_PASSWORD=pass PORT=3001 bundle exec rails s` Start frontend with : `yarn run client` or `PORT=3000 yarn --cwd client start` ### Note about authentication Authentication is currently basic auth, note ENV variables in starting backend server commands! At the moment, loading from .ENV file is not supported ## Heroku Deploy Procedure 1. Login to Heroku with : `heroku login` 2. Create new heroku app from local repository with : `heroku create app-name-here` 3. Head to the settings tab of the new Heroku app. Under the `Buildpacks` click on `Add buildpack` button and select `nodejs` and `ruby`. Click `Save changes` Reorder buildpacks so that `heroku/nodejs` is first. 4. Add `BASIC_AUTH_USERNAME` and `BASIC_AUTH_PASSWORD` ENV variables to the Heroku (settings tab) 5. Push repository to the Heroku with : `git push heroku master` (For testing purposes) Deploy non-master branch from local repository to the heroku : `git push heroku other-branch:master`