This Blog Website is a full-stack web application that allows users to create, read, update, and delete blog posts. It features user authentication, image uploads, and a responsive design using modern web technologies.
Blog Website is designed to provide a seamless blogging experience. Users can sign up, log in, and manage their own blog posts. The application supports image uploads for blog posts and offers a modern, responsive design.
- User authentication (sign up, log in, log out)
- Create, read, update, and delete blog posts
- Image uploads for blog posts
- Responsive design
Client:
- React
- Material UI
- Axios
- React Router
Server:
- Node.js
- Express
- MongoDB with Mongoose
- JWT (JSON Web Tokens)
- Bcrypt for password hashing
- Multer and GridFS for file uploads
- Cors
- Dotenv
- Node.js (v14.x or later)
- npm (v6.x or later)
- MongoDB (local or cloud instance)
-
Clone the repository:
git clone https://github.com/Ansari-Irfan-360/Reflect.git cd blog-website
-
Install client dependencies:
cd client npm install
-
Install server dependencies:
cd ../server npm install
-
Create a
.env
file in theserver
directory and add your MongoDB URI and JWT secret:MONGO_URL=your_mongodb_url JWT_SECRET=your_jwt_secret
-
Start the server:
npm start
-
Start the client:
cd ../client npm start
The client will run on http://localhost:3000
and the server will run on http://localhost:5000
.
- Open your browser and navigate to
http://localhost:3000
. - Sign up for a new account or log in with an existing account.
- Create, read, update, and delete blog posts.
- Upload images to your blog posts.