This is a full-stack blog application built using the MERN (MongoDB, Express.js, React, Node.js) stack. The frontend is styled using Tailwind CSS with the Flowbite theme.
- Frontend: ReactJS, TailwindCSS, Flowbite
- Server/Hosting:
- ODM: Mongoose
- Backend: ExpressJS, MongoDB, Firebase
- Misc: React Redux Toolkit, JSON Web Tokens, React Quill, Moment, Nodemon, Cookie Parser, BcryptJS, Dotenv
The Web Application is hosted on Render
output.mp4
Watch the Demo Video on YouTube
- User Authentication using GoogleAuth
- Light & Dark modes
- Admin Management & Dashboard
- Integration with Redux Toolkit, React Quill
- Different views for admins and users
- Search & Sort Functionality
- Responsive
- Comments, Likes, Edit integrated
- Node.js and npm installed.
- MongoDB installed and running locally
- Firebase Configured
To get started with this project, follow these steps:
-
Clone the repository:
git clone https://github.com/Nithin1729S/Inkwell-Insights-A-Blogging-Website.git
-
Change .env files:
Update the details in the
.env
files located in the main directory and the client directory.In the main directory
.env
file, set the following variables:MONGO='<YOUR MONGODB ADDRESS >' JWT_SECRET='<YOUR JWT TOKEN SECRET>'
In the client directory
.env
file, set the following variable:VITE_FIREBASE_API_KEY="<YOUR FIREBASE KEY>"
-
Install dependencies:
First, navigate to the
<repository_name>
folder and install dependencies:npm install
Then, navigate to the
api
folder and install its dependencies:cd ../api npm install
-
Run the development servers:
In one terminal window, run the client development server:
cd ../client npm run dev
In another terminal window, run the API development server:
cd ../api npm run dev
Now, you should have both the client and API servers up and running.Follow the link shown in client side terminal to view the website