This project is a simple Blog web application built using Node.js, Express.js, and EJS. It allows users to create, view, update, and delete blog posts.
- Post Creation: Users can create new blog posts with rich content using Markdown formatting.
- Post Viewing: The home page showcases a list of all posts, enabling users to easily browse and read them.
- Post Update/Delete: Individual posts can be edited or deleted as needed, providing flexibility in content management.
- Styling: The application is designed with a focus on user experience, featuring a clean and responsive interface that adapts seamlessly to different screen sizes.
- Node.js & Express.js: Node.js serves as the JavaScript runtime environment, while Express.js is used to create the web server and handle routing and middleware.
- EJS: EJS (Embedded JavaScript) is employed as the templating engine to generate dynamic HTML content based on the application's state.
- No Database: In this version, posts do not persist between sessions as a database is not implemented.
- Focus on Styling: Significant attention has been devoted to styling to ensure a visually appealing and user-friendly experience.
Node.js and npm: Ensure you have Node.js (version 14 or above recommended) and npm (Node Package Manager) installed on your system. You can download Node.js from https://nodejs.org/.
Basic understanding of JavaScript: Familiarity with JavaScript syntax and concepts is essential for working with Node.js, Express.js, and EJS.
Understanding of web development concepts: Basic knowledge of HTML, CSS, and routing principles will be helpful in understanding the application's structure.
Nodemon (recommended): While not strictly required, installing nodemon globally is highly recommended for a smoother development experience. It automatically restarts the server when file changes are detected, saving you time and effort.
- Clone this repository.
- Install dependencies:
npm install
- Start the server:
nodemon index.js
- Access the application in your browser, typically at
http://localhost:3000/
Feel free to contribute to this project by suggesting features, reporting bugs, or submitting pull requests.
This project is licensed under the MIT License.