π Quillier - A Modern Blogging Platform
π Visit the website at: https://quillier.vercel.app
π Project Overview
Quillier is a modern full-stack blogging platform built with the MERN stack. I created this blog application during my early days of learning web development. It was a project that helped me explore and understand some essential concepts of building full-stack web applications.
β¨ Key Features
- π User Authentication:
- Secure Google Sign-In integration using Firebase
- Role-based access control
- π Rich Text Editing:
- Interactive content creation with Quill editor
- Intuitive and user-friendly writing experience
- π¬ Interactive Comments:
- Real-time commenting system
- Engage and interact with blog posts
- Nested comment threads
- π¨ Dynamic Theming:
- Light and dark mode switching
- Personalized user interface
- π Role Management:
- Admin privileges for comprehensive content management
- Granular access controls
- π± Responsive Design:
- Mobile-first approach
- Tailwind CSS for adaptive layouts
πΌοΈ Application Preview
π οΈ Tech Stack
Frontend
- Framework: React 18 with Vite
- State Management: Redux Toolkit
- Styling: Tailwind CSS
- Authentication: Firebase
- Rich Text Editor: Quill
Backend
- Runtime: Node.js
- Framework: Express
- Database: MongoDB with Mongoose
- Authentication: JWT
- Password Security: Bcrypt
π Local Setup
Prerequisites
- Node.js (18.x)
- npm or yarn
- MongoDB instance
Installation Steps
- Clone the Repository
git clone <https://github.com/HarshDodiya1/Quillier.git> cd Quillier
- Install Dependencies
# Install client dependencies cd client npm install # Install server dependencies cd ../server npm install
- Configure Environment Variables
Client (.env)
VITE_API_BASE_DEV=YOUR_SERVER_URL VITE_FIREBASE_API_KEY=YOUR_FIREBASE_APIKEY
Server (.env)
REACT_APP_API_URL_DEV=YOUR_FRONTEND_URL PORT=3000 MONGO_URL=YOUR_MONGODB_CONNECTION_STRING JWT_SECRET=YOUR_JWT_SECRET_KEY
- Run Development Servers
# Start client cd client npm run dev # Start server (in another terminal) cd server npm run start
π Project Journey
This blog application was more than just a coding projectβit was a learning journey. As a budding web developer, I embraced challenges and transformed them into opportunities:
- Learning Authentication: Implementing Firebase Google Sign-In
- Interactive Editing: Mastering the Quill editor for rich text experiences
- Design Flexibility: Creating dynamic theme switching
- Security First: Developing role-based access controls
- User Experience: Building an intuitive admin dashboard
π€ Contributing
Contributions are welcome!
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
)
- Commit your changes (
git commit -m 'Add some AmazingFeature'
)
- Push to the branch (
git push origin feature/AmazingFeature
)
- Open a Pull Request
For major changes, please open an issue first to discuss proposed modifications.
π License
Distributed under the MIT License. See
LICENSE
for more information.π Contact
Your Name - dodiyaharsh999@gmail.com
Project Link: https://github.com/HarshDodiya1/Quillier