The following steps are only for one of the group members to perform.
- Create your own copy of this repo using the Use This Template button, ideally using the name of your project. The repo should be marked Public
- Verify that the skeleton code now shows up in your repo on GitHub, you should be automatically redirected
- Clone your copy of the repo to your dev machine
- Add your team members as collaborators to the project so that they can push to this repo
- Let your team members know the repo URL so that they use the same repo (they should not create a copy/fork of this repo since that will add additional workflow complexity to the project)
- Create the .env by using .env.example as a reference: cp .env.example .env
- Update the .env file with your correct local information
- username: labber
- password: labber
- database: midterm
- Install dependencies: npm i
- Reset database: npm run db:reset
- Check the db folder to see what gets created and seeded in the DB
- Run the server: npm run local
- Note: nodemon is used, so you should not have to restart your server
- Visit http://localhost:8080/
- Do not edit the layout.css file directly, it is auto-generated by layout.scss.
- Split routes into their own resource-based file names, as demonstrated with users.js and widgets.js.
- Split database schema (table definitions) and seeds (inserts) into separate files, one per table. See db folder for pre-populated examples.
- Use helper functions to run your SQL queries and clean up any data coming back from the database. See db/queries for pre-populated examples.
- Use the npm run db:reset command each time there is a change to the database schema or seeds.
- It runs through each of the files, in order, and executes them against the database.
- Note: you will lose all newly created (test) data each time this is run, since the schema files will tend to DROP the tables and recreate them.
- Node 14.x or above
- NPM 6.x or above
- PG 6.x