Welcome to my personal blog repository! This project is a web application designed to share my thoughts, experiences, and articles on various topics.
- User Authentication: Secure login and registration system.
- Post Management: Create, edit, and delete blog posts.
- Comment System: Engage with readers through comments.
- Responsive Design: Optimized for both desktop and mobile devices.
- Backend: Node.js with Express framework.
- Frontend: EJS templating engine.
- Database: MongoDB for data storage.
- Styling: CSS for design and layout.
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/Mohamadrezash204/Personal-blog.git cd Personal-blog
-
Install dependencies:
npm install
-
Set up environment variables:
- Create a
.env
file in the root directory. - Add the following variables:
PORT=3000 MONGODB_URI=your_mongodb_connection_string SESSION_SECRET=your_session_secret
- Create a
-
Start the application:
npm start
The application will be accessible at
http://localhost:3000
.
- Home Page: View a list of all blog posts.
- Post Details: Click on a post to read the full content and comments.
- Create Post: If authenticated, create new blog posts.
- Edit/Delete Post: Manage your posts with edit and delete options.
- Comment: Engage with posts by adding comments.
I welcome contributions to enhance this project. To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature
). - Commit your changes (
git commit -m 'Add YourFeature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a Pull Request.
This project is open-source and available under the MIT License.
For any questions or suggestions, feel free to reach out:
- Email: [email protected]
- GitHub: https://github.com/Mohamadrezash204