Coder Social home page Coder Social logo

echat's Introduction

Echat Logo

ECHAT is a comprehensive chat application created using Flutter, Firebase, Dart, and Figma, offering a seamless communication experience.

🎥 Simple demo

EchatDemo

🔰 Project Description

  • Created ECHAT, a robust chat application, leveraging Flutter, Firebase, Dart, and Figma, to provide users with an all-encompassing communication platform.
  • Empowered with real-time messaging capabilities, supporting text, images, videos, and PDFs, facilitating seamless interaction between users.
  • Ensured utmost user security and privacy by implementing secure authentication mechanisms via email and Google Integration.
  • Integrated advanced voice and video calling functionalities using Agora SDK, allowing users to mute audio, disable video, and terminate calls as needed, enhancing the overall user experience.
  • Implemented essential features including user search, profile management, contact inviting, and call/message history, to enhance usability and convenience.
  • Optimized app performance through media caching techniques and reliable push notifications using cloud messaging, ensuring smooth and uninterrupted communication experiences.

➤ Key Features

  • Real-time Messaging: Instant exchange of text, images, videos, and PDFs.
  • Secure Authentication: Email and Google Integration for secure login.
  • Voice and Video Calling: Real-time calls with mute, disable video, and call termination.
  • Optimized Performance: Enhanced app performance with media caching and reliable push notifications.
  • Contact Invitations: Invite contacts to join ECHAT for conversations.
  • Profile Editing: Customize profiles with personal information and pictures.
  • Call Log Management: View and delete call logs for control.
  • Search Functionality: Easily discover and connect with other users.|

🛠 Technologies and Frameworks Used

  • Figma Figma (for UI design)
  • Flutter Flutter Framework (Dart language)
  • Firebase Firebase (for Authentication And Storing Data)
  • Provider Provider (for state management)
  • Agora SDK Agora SDK (for Video and voice calling)
  • Hive Hive (for local storage)
  • SQLite SQLite (for local storage)

⚡Usage/Examples

import 'package:flutter/material.dart';
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

//MyApp
class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
    Widget build(BuildContext context) {
        return MaterialApp(
            home: FutureBuilder(
                    future: authMethods.getCurrentUser(),
                    builder: (context, AsyncSnapshot<User?> snapshot) {
                    if (snapshot.hasData) {
                      return BotttomNavigationBar();
                    } else {
                      return isViewed != 0 ? OnBoardScreens() : Authenticate();
                    }
                  },
                ),
            );
    }

🚀 Installation

  1. Clone the repository:

    git clone https://github.com/sahilpotdukhe/echat.git
  2. Navigate to the project directory:

    cd echat
  3. Install dependencies:

    flutter pub get
  4. Run the app:

    flutter run
    

📋 Requirements


Figma App Design

Screen 1

OnBoarding Screen

Screen 2

SignUp Screen

Screen 3

ChatLists Screen

Screen 1

Conversations Screen

Screen 2

Profile Screen

Screen 3

Search Screen

Screen 1

Pickup Screen

Screen 2

VideoCall Screen

Screen 3

CallLogs Screen

🤝 Contributing

Contributions are always welcome! If you have a suggestion that would make this better, please fork the repo and create a pull request. Don't forget to give the project a star! Thanks again!

  • Fork the Project
  • Create your Feature Branch (bash git checkout -b feature/AmazingFeature)
  • Commit your Changes (bash git commit -m 'Add some AmazingFeature')
  • Push to the Branch (bash git push origin feature/AmazingFeature)
  • Open a Pull Request

➤ Contact

You can reach out to me via the following methods:

This project underscores the power of modern technologies in creating a feature-rich and secure chat application tailored for today's communication needs.

echat's People

Contributors

sahilpotdukhe avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.