Blogify is a full-stack web application where users can perform CRUD (Create, Read, Update, Delete) operations on blog posts. It features authentication and authorization using JWT (JSON Web Tokens) for session management, built with Node.js, Express.js, MongoDB with Mongoose, and hosted on AWS. The app has a seamless UI and utilizes EJS (Embedded JavaScript) for templating.
- π‘οΈ User Authentication: Sign up, sign in, and sign out functionality.
- π Authorization: Protected routes accessible only to authenticated users.
- βοΈ Create, Read, Update, and Delete (CRUD) operations on blog posts.
- πͺ Session Management: JWT-based authentication with cookies for session management.
- π MongoDB Database: Persistence using MongoDB with Mongoose ODM.
- π₯οΈ Responsive UI: Seamless user interface for optimal user experience.
- π Hosted on AWS: Deployed and hosted on Amazon Web Services.
- Node.js
- Express.js
- MongoDB with Mongoose
- EJS (Embedded JavaScript)
- JSON Web Tokens (JWT) for authentication
- Cookies for session management
- AWS for hosting
- Clone the repository:
git clone https://github.com/yourusername/Blogify.git
- Install dependencies:
cd BLOGAPP
npm install
- Set up environment variables:
Create a .env
file in the root directory and add the following:
PORT=8080
MONGODB_URI=mongodb://localhost:27017/blogify
SECRET_KEY=your_secret_key
Replace your_secret_key
with your desired secret key for JWT token generation.
- Start the server:
npm start
- Visit
http://localhost:3000
in your web browser.
Contributions are welcome! Please fork the repository and submit a pull request with your changes. For major changes, please open an issue first to discuss what you would like to change.