BlogNest is a sleek and modern blogging platform designed to empower writers and creators to share their content seamlessly. With an intuitive interface, professional design, and robust functionality, BlogNest is your go-to platform for impactful blogging.
- User Authentication: Secure login and signup functionalities.
- Post Management: Create, edit, delete, and manage your blog posts.
- Image Integration: Upload featured images with lazy loading for performance.
- Rich Text Editor: A robust editor with formatting options for beautiful posts.
- Responsive Design: Works seamlessly on all devices, from desktops to mobiles.
- Dark Theme: A visually appealing and comfortable dark mode UI.
- Frontend: React, Tailwind CSS
- Backend: Appwrite for APIs and database management
- State Management: Redux Toolkit
- Routing: React Router
- Styling: Tailwind CSS
To set up the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/yourusername/blognest.git
-
Navigate to the project directory:
cd blognest -
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile in the root directory and add the following:REACT_APP_APPWRITE_URL=your-appwrite-endpoint REACT_APP_APPWRITE_PROJECT_ID=your-project-id REACT_APP_APPWRITE_DATABASE_ID=your-database-id REACT_APP_APPWRITE_COLLECTION_ID=your-collection-id
-
Run the application:
npm start
The app will be accessible at
http://localhost:3000.
-
Sign Up:
- Create a new account to start blogging.
-
Create a Post:
- Navigate to the "Add Post" page and use the rich text editor to create content.
-
Manage Posts:
- Edit or delete your posts from the "My Posts" section.
-
Read Posts:
- Explore and read blog posts on the homepage.
blognest/
├── public/ # Static files
├── src/
│ ├── components/ # Reusable UI components
│ ├── pages/ # Individual pages (e.g., Home, Login, Post)
│ ├── store/ # Redux store and slices
│ ├── routes/ # Application routes
│ ├── appwrite/ # Appwrite integration
│ └── index.js # Entry point
├── .env # Environment variables
├── package.json # Project dependencies and scripts
└── README.md # Project documentation
We welcome contributions! To contribute:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add new feature" - Push to the branch:
git push origin feature-name
- Create a pull request on GitHub.
This project is licensed under the MIT License. See the LICENSE file for more information.
BlogNest - Empowering content creators to share their stories effortlessly.