OpenBlogs is a full-stack MERN (MongoDB, Express.js, React.js, Node.js) blog application designed to empower users to share their thoughts and ideas with the world. It incorporates user authentication and authorization using JWT (JSON Web Tokens) for secure access to the platform. The application features two types of users: authors and readers. Authors have access to a private dashboard where they can create, update, delete, and maintain their blog posts, along with visual representations through charts.
Live Deployed Link: OpenBlogs
- User Authentication: Utilizes JWT for secure user authentication and authorization.
- Author Dashboard: Provides authors with a private dashboard to manage their blog posts.
- CRUD Operations: Enables authors to create, read, update, and delete blog posts.
- Image Upload: Integrates Cloudinary for efficient image storage and retrieval.
- Responsive Design: Ensures optimal viewing experience across various devices.
- Frontend: React.js, Tailwind CSS, JavaScript
- Backend: Node.js, Express.js
- Database: MongoDB
- Authentication: JSON Web Tokens (JWT)
- Image Storage: Cloudinary
To run OpenBlogs locally, follow these steps:
-
Clone the repository:
git clone https://github.com/AdityaGoel0320/OpenBlogs_A_Place_To_Share_Your_Thoughts_MERN_CLOUDINARY.git
-
Install dependencies for both frontend and backend:
cd ../frontend npm install cd ../backend npm install
-
Create a
.env
file in the backend directory and add the following configurations:FRONTEND_URL= CLOUDINARY_CLIENT_NAME= CLOUDINARY_CLIENT_API= CLOUDINARY_CLIENT_SECRET= PORT= JWT_EXPIRES= JWT_SECRET_KEY= COOKIE_EXPIRE= MONGO_URI=
-
Start the frontend and backend servers:
# Frontend cd ../frontend npm start # Backend cd ../backend npm start
-
Open your browser and navigate to
http://localhost:3000
to access OpenBlogs locally.