A CMS-style blog where developers can publish their blog posts and comment on other developers' posts as well. Follows the MVC paradigm in its architectural structure, using Handlebars.js as the template engine, Sequelize as the ORM, and the express-session npm package for authentication.
Features include:
- Allows users to create a account with a unique username and a password
- Users are able to view blog posts published by other users
- Registered users can create new blog posts with a title and text content
- Registered Users can view their previously published posts
- Registered Users can update the text of a previously published post
- Registered Users can delete a previously published post
- Registered Users can publish comments on published posts
- Logged in sessions are saved allowing users to access their account over an extended period of time as they utilize the page
This exercise was provided by Northwestern University and edX through the Coding boot camp. Submitted as fulfillment of the Module 14 exercise during the December, 2023 - June, 2024 cohort.
N/A
- Users can access the deployed page by utilizing the link in the section below
- Web page visitors can view the existing posts previously published on the webpage.
- If users would like to submit their own blog posts, they will need create an account by providing a unique username and a password
- While logged in, users can view their previously submitted posts on the "Dashboard" page, edit previous posts, delete previous posts, and also write new blog posts
- While logged in, users can click on a post's anchor link and leave comments on published posts
- When users would like to close their session, they can log out
The relevant JavaScript, SQL, HTML, Handlebars, and CSS files are located within this repository.
JavaScript files include comments detailing changes implemented within them. Further justifications can also be found within the repository's "Issues" tab.
Please refer to the commit history and branches within the repository for a tracked history of changes.
This application utilizes Node.js, PostgreSQL, and the express and sequelize npm packages.
A normalize.css file was utilized for testing.
N/A
