...
Technology: NodeJS
Category: Chat Systems
117
Keywords: express firebase mern-stack mongodb nodejs react real-time-chat-app socketio tailwindcss

Lets Chat App | Open Source Collection

A real-time chat application. Another fun side project :)

Technologies Used

  • React and TailwindCSS for the frontend
  • Firebase for authentication
  • Node/Express for creating API endpoints
  • MongoDB for storing chat room members and their messages
  • Socket.io for making the app real-time

Basic Features

  • Users can register/login via email and password.
  • Profile page where users can update their avatar and display name.
  • Generate random avatars using DiceBear API
  • Users can create a room to chat with others.
  • Users can see online status.
  • Search functionality.
  • Chatting is real-time.
  • Emoji picker is also integrated.
  • Dark mode can be enabled.

Getting Started

To run this project locally, follow these steps:

  1. Clone the repository.
  2. Install the dependencies:
    • Navigate to the frontend directory and run npm install.
    • Navigate to the server directory and run npm install.
  3. Set up Firebase:
    • Go to the Firebase Console.
    • Create a new project or select an existing one.
    • Go to the project settings or service accounts section.
    • Click on "Generate new private key" or a similar option.
    • Save the downloaded JSON file as serviceAccountKey.json.
    • Place the downloaded serviceAccountKey.json file in the server/config directory.
  4. Set up Environment Variables:
    • In the frontend directory, create a new file named .env based on the .env.example file.
    • Update the values of the environment variables in the .env file with your Firebase configuration details.
    • In the root directory, create a new file named .env based on the .env.example file.
    • Update the values of the environment variables in the .env file according to your preferences. For example, set the PORT variable to specify the desired port for the server and set MONGO_URI to your MongoDB connection URI.
  5. Run the server:
    • Navigate to the server directory and run npm run start.
  6. Run the client:
    • Navigate to the frontend directory and run npm start.
  7. The application will be accessible at http://localhost:3000.

Please make sure to keep the serviceAccountKey.json file and sensitive information secure and not commit them to version control.

Profile Picture

Hi, I'm Habib. I'm the founder of OpenSourceCollection. I help build web applications, grow businesses, big and small. If that is what you want, contact me.

I'm currently available for freelance work.

Visit my Protfolio. Let's connect on Linkedin or GitHub

Contact Me

About OpenSourceCollection.com
Discover, explore, and find open-source web apps from various categories and technologies, while accessing live demos, screenshots, and GitHub source code links.