Before making a pull request. From your branch:
- stage any changes git add . & git commit -m "meaningful message"
- git checkout main
- update your local main git pull origin main5
- go back to your branch git checkout branch-name
- merge your branch with main git merge main
- resolve any conflicts locally; speak with the person who wrote the conflicting code if necessary
- repeat step 1
- open a PR git push origin branch-name
To add, if you ever want to make your branch available for everyone else, simply:
- git push origin branch-name just don’t open up a PR after, and everyone can then check out your branch
- Louis - Loo-Ashworth
- Adrian - adrianHards
- Laura - Lmason14
- Joe - Joecunliffe98
- Terry - terenceroach
- Lisa - lisaoausb
- Emma - emmadavids
- Joan -JoanKalanzi
This is a Node.js template for the Acebook engineering project.
It uses:
- Express web framework for Node.js.
- Nodemon to reload the server automatically.
- Handlebars to render view templates.
- Mongoose to model objects in MongoDB.
- ESLint for linting.
- Jest for testing.
- Cypress for end-to-end testing.
- Install Node Version Manager (NVM)
Then follow the instructions to update your
brew install nvm
~/.bash_profile
. - Open a new terminal
- Install the latest version of Node.js, currently
18.1.0
.nvm install 18
- Fork this repository
- Rename your fork to
acebook-<team name>
- Clone your fork to your local machine
- Install Node.js dependencies
npm install
- Install an ESLint plugin for your editor. For example: linter-eslint for Atom.
- Install MongoDB
Note: If you see a message that says
brew tap mongodb/brew brew install mongodb-community@5.0
If you need to have mongodb-community@5.0 first in your PATH, run:
, follow the instruction. Restart your terminal after this. - Start MongoDB
brew services start mongodb-community@5.0
- Start the server
npm start
- Browse to http://localhost:3000
The server must be running locally with test configuration for the integration tests to pass.
npm run start:test
This starts the server on port 3030
and uses the acebook_test
MongoDB database,
so that integration tests do not interact with the development server.
- Run all tests
npm test
- Run a check
npm run lint # linter only npm run test:unit # unit tests only npm run test:integration # integration tests only
Some people occasionally experience MongoDB connection errors when running the tests or trying to use the application. Here are some tips which might help resolve such issues.
- Check that MongoDB is installed using
mongo --version
- Check that it's running using
brew services list
If you have issues that are not resolved by these tips, please reach out to a coach and, once the issue is resolved, we can add a new tip!
Requirements Bcrypt - for pw hashing Validator Cloudinary Multer dotenv method-override