Project Match is a web app created with the MERN stack with typescript integration. It's primary function is to help programmers and designers match with projects they would be interested in. Project Match will then provide team collaboration tools to support new teams with features such as a dedicated platform for mockup reviews/redlines and group chat.
git clone https://github.com/chingu-voyage4/Bears-Team-11.git
git remote add upstream https://github.com/chingu-voyage4/Bears-Team-11.git
npm install -g create-react-app
npm install
cd Bears-Team-11/
npm start
- Install MongoDB Community Server. Follow install instructions
- Install MongoDB Compass (for local copy of mongodb)
npm run start-server
runs the express server on port8080
.- Go to your mongodb files (ex with Windows, C:\Program Files\MongoDB\Server\3.6\bin)
start mongod.exe
start mongo.exe
- Start MongoDB Compass
- To runs tests use the command
npm test
. - Use Postman app as an alternate/concurrent option for tests
- Work from each developer takes place in their own individual branch
- Before pushing your work into
development branch
, mergedevelopment branch
into your own branch first and work out any conflicts - Once there are no merge conflicts:
- push your commits to your dedicated Development-Staging branch (ex,
fsadikin-dev-staging
) - from this branch, you can do a pull request to the
development branch
. - Do not merge the pull request by yourself. Assigned reviewers (at least 2 teammembers) to review the code.
- If the reviewer request changes, make the necessary changes within your dedicated Development-Staging branch and commit it again. The existing pull request will update itself to show the new commits. This process is repeated until the reviewer approves the pull request. FYI, you can continue working within your own branch, but keep the dev-staging branch clean while you are waiting for the Pull Request review. The contents of the dev-staging branch should match the PR commits exactly.
- Warning! Do not use
git push --force
. If you are having troubles with merge conflicts, resolve them correctly withgit pull
or rebase your code withgit pull --rebase
. A forced push overwrites the structure and sequence of commits on the authoritative repository, throwing away other people's commits.
This project was bootstrapped with Create React App.
ENDPOINT | METHOD | URL PARAMS | PURPOSE |
---|---|---|---|
/api/home | GET | ||
/api/login | POST | email, password | Signs in user |
/api/signup | POST | firstName, lastName, username, email, password | Adds new user |
/api/logout | GET | Signs out user | |
/api/forgot | POST | Sends an email you forget your password | |
/api/reset/:token | POST | token, password | Resets your password |
/api/users | GET | Returns list of all users | |
/api/user/:username | GET | username | Returns individual user data |
/api/user/delete | POST | username, password | Deletes user |
/api/user/deactivate | POST | username, password | Deactivates user |
/api/user/activate | POST | username, password | Re-activates user |
/api/user/update | POST | username | Updates individual user data |
/api/user/settings/:username | GET | Return individual user settings | |
/api/user/settings/update/:username | POST | Edit individual user settings | |
/api/projects | GET | options | Returns all projects |
/api/projects/add | POST | Adds new project | |
/api/projects/:id | GET | id | Returns individual project filtered by id |
/api/projects/update/:id | POST | id, updateKey, updateValue | Updates single project by id |
/api/projects/delete/one/:id | DELETE | id | Deletes single project by id |
/api/projects/filter | GET | name, category, r ole, tags, sortBy, status | Returns list of projects filtered by params |
/api/projects/tags | GET | Returns all available tags | |
/api/projects/categories | GET | Returns all available categories |