Skip to content

aruntutter/react-firebase-blog-app

Repository files navigation

ReactifyBlog: Elevating Content Management with Firebase

Table of Contents

Links

Description

This is a blog application built using React, Vite, JavaScript, CSS, HTML, and Firebase. Users can view all blogs, read individual blog posts, and navigate through the application. Admins have additional functionalities such as logging in, accessing the dashboard, creating and deleting blogs.

Screenshot

Before Login

  1. Home

Home

  1. Blogs

Blogs

  1. BlogInfo

BlogInfo

After Login

  1. Home

Home After Login

  1. Dashboard

Dashboard

Demo

To run the demo locally, follow these steps:

  1. Clone the repository to your local machine:

git clone

  1. Navigate to the project directory:

cd

  1. Install dependencies:

npm install

  1. Set up Firebase:
  • Create a project on the Firebase console.
  • Enable Firestore and any other necessary services.
  • Obtain your Firebase configuration details.
  • Update the Firebase configuration in your codebase (typically in a Firebase config file).
  1. Start the development server:

npm run dev

  1. Access the application in your browser at:

http://localhost:3000

Note: You may need to set up authentication and authorization rules in your Firebase project to properly test admin functionalities.

Features

  • Users can view all blogs
  • Users can read individual blog posts
  • Admins can log in to access the dashboard
  • Admins can create new blogs
  • Admins can delete existing blogs
  • Authentication for admin access
  • Use of React Toast to display notifications

Technologies Used

  • React
  • Vite
  • JavaScript
  • CSS
  • HTML
  • Firebase

Usage

To use the application, follow these steps:

  1. Clone the repository to your local machine.
  2. Install dependencies using npm install or yarn install.
  3. Set up Firebase by creating a project on the Firebase console, enabling Firestore, and updating the Firebase configuration in the code.
  4. Run the application using npm start or yarn start.
  5. Access the application in your browser at http://localhost:3000.

What I Learned

While working on this project, I learned:

  • Implementation of authentication and authorization using Firebase.
  • React Router for handling client-side routing.
  • State management in React using hooks.
  • Integration of Firebase Firestore for database operations.
  • Creating protected routes for admin functionalities.
  • Using React Toast for displaying notifications.

Contributing

Contributions to the project are welcome! Here's how you can contribute:

  1. Fork the repository.
  2. Create a new branch for your feature (git checkout -b feature-name).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add new feature').
  5. Push to the branch (git push origin feature-name).
  6. Create a new Pull Request.

Please make sure to follow the project's coding style and guidelines. Thank you for contributing!