"A place where like-minded professionals can connect and collaborate."
-
Clone the repo and
cd
into the repo -
Configure a MongoDB instance and a Google Cloud Storage bucket
-
Copy your Google service account authentication JSON key into
/server
-
Use
.env.example
to create a.env
file with your credentials such as:MONGO_URL=mongodb+srv://USER:PASSWORD@cluster0.hgylc.mongodb.net/DBNAME SECRET=SHARED-CLIENT-SERVER-SECRET PROJECT_ID=GOOGLE-CLOUD-PROJECT-ID KEY_FILENAME=/server/GOOGLE-CLOUD-KEY-NAME.json REACT_APP_BUCKET_NAME=GOOGLE-CLOUD-BUCKET-NAME
- MONGO_URL is the URL to the backend's MongoDB instance
- SECRET is a shared secret used for encrypting and decrypting JWT for authentication
- PROJECT_ID is the Google Cloud Storage project's name
- KEY_FILENAME is the path to the Google service account authentication JSON key relative to the root
- REACT_APP_BUCKET_NAME is the Google Cloud Storage bucket's name
-
Commands:
-
docker-compose up --build
will launch the website at the URL localhost:3000 -
docker-compose run server npm test
will run the server tests -
docker-compose run server npm run lint
will run the server linter -
docker-compose run server npm run plato
will run Plato static analysis for the server- Results are stored in
/server/report/index.html
- Results are stored in
-
docker-compose run client npm test
will run the client tests -
docker-compose run client npm run lint
will run the client linter -
docker-compose run client npm run plato
will run Plato static analysis for the client- Results are stored in
/client/report/index.html
- Results are stored in
-
Make code contributions in a branch related to an issue, and create a request to merge branch after the issue is resolved
- All code contributions must pass the linters before submission
- All code contributions must be reviewed by one team member before submission
- All code contributions must pass all tests before submission
- All code contributions must have corresponding tests