Our HackMD presentatiion can be found here.
Kin - Maria - Nikke - Pat
- git clone this repo
- npm install to set up node modules
- \i Initialise a local database
- Create .env file in route file
- Add DB_URL value to your .env - please ask MELP team to send this to you
- Login form with 2 fields - username and password
- Users only have to log in once (i.e. implement a cookie-based session on login)
- Username is visible on each page of the site after logging in
- Any user-submitted content should be labelled with the authors username
- There should be protected routes and unprotected routes that depend on the user having a cookie or not (or what level of access they have).
- Website content should be stored in a database
- Include thorough tests on the back-end, testing pure functions and testing routes using Supertest. If you make external API calls, use Nock to mock the response for your tests.
- Test front-end logic, we don't expect tests on the DOM.


- input and label by default stacked one on each other
.user-form-container .input-field input:focus ~ label,
.user-form-container .input-field input:valid ~ label {
top: -29px;
left: 0;
color: rgb(39, 37, 37);
font-size: 0.8rem;
}
Extra snippets can also be added: https://app.creately.com/diagram/DdgtfSE5Wqp/view
As a team we started adopting a a new git command: "git rebase"






- Our database - get/post functions
- Hashing of our passwords
- Our routers
- though this takes a little while...
- Code coverage
- Promise!! (we wrote one)
- Monster handler (needs to be refactored and modularised)
- POST (does not need an API request - a form will know how to handle this)
- Codecov
- Project requirements!