Table of Contents
We would like to reduce the amount of actual work and guess work currently involved in the in/out-processing process, by allowing computers to do the tedious work.
Allowing you to focus on what you actually need to do and help you do it.
-
Docker must be installed on the system at a minimum. While the server and user interface can be spun up manually, the database requires docker for installation)
-
A Firebase Account with:
- A Project set up under your Firebase account
- Authentication set up configured for Email/Password Authentication
- Knowledge of your Firebase project's private key (see Project Settings)
- See Firebase Docs on admin setup
Navigate to: https://bsdi1-voyager-frontend.herokuapp.com
- Clone the Voyager Repo
- Example:
git clone git@github.com:Th3Whit3Wolf/voyager.git
- Example:
- Navigate into the repo
- Example:
cd voyager
- Example:
- Add firebase private key to
.secrets- Per the prerequisites, you should already have a Firebase project and your private key
- Copy your key into
.secretsfrom the project root directory - Create a
.envfile withFIREBASE_PATHset to the name of the file you added to the.secretsdirectorymkdir .secrets cat << EOF > .env FIREBASE_PATH="firebaseVoyagerDev.json" EOF mv firebaseVoyagerDev.json .secrets
- From the voyager root directory, start up Docker compose
npm run docker:up - Set up the database schema and initialize with seeds
cd backend npm run db:reset cd .. - Open a new browser and navigate to http://localhost:3000
- To spin the application back down use
npm run docker:down
Note: If there are errors trying to get the application to load after spinning it up in step 4, then some Developers may have to do some steps manually:
- IF there are errors, then some Developers may have too: - First, make sure all Docker containers are down with
npm run docker:down- Second, remove all Docker voyager images - Then do the following stepscd frontend npm install cd ../backend npm install cd .. npm run docker:up cd backend npm run db:reset (select yes with "y" option) cd ..
License distribution is based upon the various packages used in the development. The primary packages used in this project are provided at the beginning of this ReadMe document.