Skip to content

ChatNow is a real-time web chat application powered by Firebase, React, and TypeScript. It provides users with a seamless platform for engaging in instant conversations, sharing messages, and more.

License

Notifications You must be signed in to change notification settings

s-shemmee/ChatNow

Repository files navigation

ChatNow - Real-time Web Chat Application 🚀

Overview

ChatNow is a real-time web chat application built using Firebase for backend services and React for the frontend. This project was created as a learning and practice exercise to explore Firebase integration, TypeScript, and other web development technologies.

Preview

Screenshot

💻 Technologies Used

Frontend

  • React: JavaScript library for building user interfaces.
  • TypeScript: Typed superset of JavaScript for improved code quality.
  • Material-UI: React components for a responsive design.

Backend

  • Firebase Authentication: User authentication and authorization.
  • Firebase Firestore: Cloud-based NoSQL database for storing messages and user data.
  • Firebase Storage: Scalable object storage for multimedia content.
  • Firebase Cloud Functions: Serverless functions for additional backend logic.

🌟 Features

  • Real-time Chat: Engage in instant conversations.
  • Firebase Authentication: User management with authentication.
  • User Status Tracking: Monitor online/offline status.
  • Message History: Store messages in Cloud Firestore.
  • Media Support: Share images and text messages.
  • Emoji Support: Express yourself with a rich set of emojis.
  • Timestamps: Provide context with message timestamps.
  • TypeScript Integration: Enhance code readability.
  • Modern UI Design: Ensure a seamless user experience.

🔮 Upcoming Features

Here's a sneak peek into what's coming next:

  • Group Chats: Simultaneously converse with multiple users.
  • Read/Unread Messages: Easily keep track of your messages.
  • Archive Chats: Organize conversations for future reference.
  • Advanced Message Management: Control messages with delete, forward, and copy options.
  • Customizable Themes: Personalize your chat environment.
  • Enhanced User Profiles: Add more details for a personalized experience.
  • Improved Notifications: Receive enhanced notifications for new messages and updates.

🏁 Getting Started

📥 Installation

To start using ChatNow, follow these steps:

  1. Clone the repository.

    git clone https://github.com/s-shemmee/ChatNow.git
  2. Install dependencies.

    cd ChatNow
    npm install
  3. Set up Firebase.

    • Create a new project on Firebase.
    • Obtain your Firebase configuration and update firebase.tsx.
    • Set up Firestore and Storage in your Firebase project.
  4. Run the application.

    npm run dev
  5. Open the app in your browser: http://localhost:3000.

⚙️ Usage

  1. Create Account:

    • Sign up or log in if you already have an account.
  2. Start a Chat:

    • Initiate a new chat by searching for a user.
  3. Enjoy Real-time Chat:

    • Send messages and images in real-time.

🤝 Contributing

Contributions are welcome! If you encounter issues or have suggestions, open an issue or submit a pull request.

📝 License

This project is licensed under the MIT License.

About

ChatNow is a real-time web chat application powered by Firebase, React, and TypeScript. It provides users with a seamless platform for engaging in instant conversations, sharing messages, and more.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages