React+firebase chat System
Welcome to the React Chat System repository! This project is a full-stack chat application built using React for the front end and Firebase for the backend. It provides real-time chat functionality and can be easily integrated into various web applications.
-
Real-Time Chat: Enjoy real-time messaging with other users.
-
User Authentication: Users can sign up, log in, and customize their profiles.
-
Multiple Chat Rooms are Dleted: Becuase FBI warned me about BOYS CHATS
-
Message History: Access chat history and scroll back through messages.
-
Responsive Design: The chat system is responsive, ensuring a seamless experience on various devices.
To run this chat system locally or deploy it, follow these steps:
- Node.js installed on your machine.
- A Firebase project set up with Authentication and Realtime Database services enabled.
-
Clone this repository to your local machine:
git clone https://github.com/Ranjika123/ReactChat_System.git
-
Navigate to the project directory:
cd react-chat-system
-
Install the project dependencies:
npm install
-
Set up Firebase:
- Create a Firebase project on the Firebase Console.
- Configure Firebase in your project by adding your Firebase configuration to
src/firebase.js
.
-
Start the development server:
npm start
-
Open your web browser and navigate to http://localhost:3000 to view the chat system locally.
-
Build a "Build" Folder By Running
npm run build
8.Update the App.js According to you API Key and Data
- Sign up or log in to your account.
- Join or create chat rooms.
- Start sending and receiving messages in real-time.
To deploy this chat system to a hosting service, follow the deployment guidelines for your chosen platform (e.g., Firebase Hosting, Netlify, Vercel).
firebase deploy
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if false;
}
match /messages/{docId} {
allow read: if request.auth.uid != null;
allow create: if canCreateMessage();
}
function canCreateMessage() {
let isSignedIn = request.auth.uid != null;
let isOwner = request.auth.uid == request.resource.data.uid;
let isNotBanned = !exists(/databases/$(database)/documents/banned/$(request.auth.uid));
return isSignedIn && isOwner && isNotBanned;
}
}
}
{
"plugins": ["firebase"],
"extends": [
"eslint:recommended",
"plugin:firebase/eslintrc"
],
"rules": {
"firebase/no-duplicate-names": "warn",
"firebase/no-redundant-rules": "warn",
"firebase/prefer-use-app": "warn",
"firebase/valid-app-options": "warn",
"firebase/valid-auth-required": "warn",
"firebase/valid-credential-type": "warn",
"firebase/valid-download-size": "warn",
"firebase/valid-emulator-config": "warn",
"firebase/valid-get-data": "warn",
"firebase/valid-location": "warn",
"firebase/valid-on-complete": "warn",
"firebase/valid-permissions": "warn",
"firebase/valid-set-data": "warn",
"firebase/valid-update-data": "warn"
}
}
If you'd like to contribute to this project, please fork this repository, make your changes, and create a pull request. We welcome enhancements and bug fixes!
- Name - Ranjika Nethpriya
- social - Facebook
- social- Instergrame
This project is open-source and available under the MIT License.
We'd like to thank the React and Firebase communities for their valuable contributions to web development.
Dont violate our community guid lines,You will banned for rest of your life or Your Syster gonna pregnet