- PostgreSQL (with empty database created and an account to access it)
### Environment Variables
-`NODE_ENV` - set to `production`, `testing`, or `development`
-`PGHOST` - set to your database URL
-`PGPORT` - set to the database port
-`PGDATABASE` - set to the name of your database (i.e. `scoretrackerdb`)
-`PGUSER` - set to the user for managing the database
-`PGPASSWORD` - set to the password for that user
## Code
This program uses Node.js/Express.js for the backend, PostgreSQL for the database (with node-postgres), and Passport.js for managing users and sessions.
### Structure
-`database` folder contains backend scripts for managing and storing data.
-`mail` folder (currenly unused) contains backend scripts for sending emails.
-`public` folder contains publically accessible scripts and stylesheets for frontend.
-`scripts` folder contains scripts used by specific webpages.
-`stylesheets` folder contains CSS for various webpages.
-`routes` folder contains various routes used by the program.
-`about.js` directs to the about page (`/about`).
-`auth.js` deals with logging in and out (`/auth/*`).
-`checkLoginStatus.js` contains functions for checking the login status of the current user.
-`data.js` sends various data to the client in JSON format (`/data/*`).
-`index.js` directs to the home page (`/`).
-`manage.js` contains various functions that allows the user to add and edit items through the web browser (`/manage/*`).
-`views` folder contains pug templates for each webpage, and a `layout` template for the base layout of each page.
-`.env.example` is a template for the environment variables in a development workspace. Rename to `.env` and change values as needed.