The Staff Purchase Reimbursement Project (SPR) aims to facilitate the process of managing purchase reimbursements for administrative staff. Users will be able to access a web application that addresses their needs to submit and update reimbursement requests, download and upload required files, and view the ongoing status of their requests.
A quick setup guide is available below. For more information on the application, please see the project's Wiki pages.
Create a .env
file in the root of the project. Populate it with values for each key specified in .env.template
.
KEY | EXAMPLE | DESCRIPTION |
---|---|---|
API_PORT | 3004 | The port the API will listen on. |
MONGO_PORT | 27017 | The port used by MongoDB. |
MONGO_USERNAME | username | The root admin name for MongoDB. |
MONGO_PASSWORD | password | The root admin password for MongoDB. |
MONGO_DATABASE | my-db | The database name for MongoDB. |
MONGO_SERVICE | mongo | Prod only. The name of the Docker service for MongoDB. |
ENVIRONMENT | local | Keycloak. Local only. Set to local when running locally. |
FRONTEND_PORT | 8080 | Keycloak. Local only. The port of the frontend application. |
FRONTEND_URL | https://... | Keycloak. Production only. URL of frontend application. |
BACKEND_URL | https://... | Keycloak. Production only. URL of backend application. |
SSO_CLIENT_ID | my-id-1234 | Keycloak. Client ID. |
SSO_CLIENT_SECRET | somesecret | Keycloak. Client secret. |
SSO_AUTH_SERVER_URL | https://... | Keycloak. Authorization URL. |
GC_NOTIFY_API_KEY | somesecret | API Key for GC Notify. |
GC_NOTIFY_ADMIN_EMAIL | bob@gmail.com | Email address for admin mailbox. |
CSS_API_TOKEN_URL | https://... | URL for getting CSS API Token. |
CSS_API_CLIENT_ID | my-id-1234 | Client ID for CSS API account. |
CSS_API_CLIENT_SECRET | somesecret | Secret for CSS API account. |
CSS_API_BASE_URL | https://... | Base URL for CSS API. Used for API calls. |
JIRA_ACCOUNT_EMAIL | bob@gmail.com | The email account used to access the JIRA project. |
JIRA_TOKEN | sometoken | Token generated by JIRA to access their API. |
TESTING | true | Disables Keycloak for API testing. |
TEST_USERNAME | username | Username used for testing. |
TEST_PASSWORD | password | Password used for testing. |
This project assumes that you have Docker installed on your system. If not, please install it first.
To start the entire application, run the following command:
docker-compose up -d
.
To stop the entire application, run the following:
docker-compose down