This is a full stack application, hosted on heroku, that utilizes Node.js, Express.js, various NPM packages and various full stack web development concepts to create a small social-media style website specially for communication throughout a fictional community.
- express: High performance framework for server-side applications
- express-session and express-session-sequelize: For session creation and to connect/sync the sequelize database to the session.
- mysql2 and sequelize: To connect the application to a MySQL database and to query that database within JavaScript rather than the MySQL command-line shell.
- dotenv: For setting environment variables.
- bcrypt: For password hashing.
- express-handlebars: For serving dynamic HTML based on database queries.
- nodemailer: Linked to an external email service. This is used to stretch the functionality of the application past just the code.
npm i
To test this application in a local environment, clone this repository and enter this command in your terminal in the root of the repository.
Afterwards, before running the server, you must first navigate to the MySQL shell and create a database called "css_db", then you must create a .env file in the root of the repository and store your login credentials as follows
DB_NAME='css_db'
DB_USER='Your MySQL username'
DB_PW='Your MySQL password'
npm start