/microsoft_teams_clone

Microsoft Teams Clone is a Video conference application with a rich integrated chat experience, to connect with friends,family & colleagues. Developed as a redesign of Microsoft Teams during my menteeship at Microsoft Engage 2021

Primary LanguageDartMIT LicenseMIT

Microsoft Teams Clone by Karanjot Singh

About

drawing

Microsoft Teams Clone is a Video conference application with a rich integrated chat experience, to connect with friends,family & colleagues. Developed as a redesign of Microsoft Teams during my menteeship at Microsoft Engage 2021, It implements the following features of the original app

  • Instant Messaging
    Share your opinion and have fun with your team. Send GIFs, stickers, and emojis in a group chat or in one-to-one messages.
  • Online Meetings
    Instantly go from group chat to video conference with the touch of a button.
  • Collaborate
    Easily find, share files in real time, in chat to keep the work on :)

This application is written using Flutter & Dart, It leverages Gradle and AndroidX and utilises StreamChat SDK, Google Firebase and Jisi Meet Android SDK.

Contents

Download

Android 6.0 and above only

FAT APK Bundle

Architecture Specefic APKs

Please refer to the Guide here to know the difference.

Features

Chat Functionality

  • Google Sign In
  • Upto 2000 Active users at same time
  • Create Group / personal chats outside a meeting
  • Pin messages.
  • Delete / edit messages.
  • Photo, Audio, Videos, etc.
  • GIFs via GIPHY
  • Chat reactions & Emojis.
  • Reply on threads.
  • Integrated Video rooms.
  • User mentions.
  • Mute Conversations

Video Conferencing Functionality

  • Toggle Video / Audio
  • Share Screen
  • Anonymous Join In
  • Raise Hand
  • Set Meeting Password
  • Share files
  • In meet private chat
  • Record the meeting
  • Share Links
  • Broadcast Live
  • Low Bandwidth mode
  • Minimised mode

UI / UX

  • Onboarding Screens
  • Fully Responsive UI
  • Minimalist UI
  • Dark / Light Theme

Complete Feature List

Development

Project Setup

Coding Style

Overview of the codebase

Untitled (1)

Contributing

Implementation

Technologies Used

Agile Methodologies

  • Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams.

scrum-1

  • Hence, The development of this project was iterative: Design, Code, Redesign, Fix Errors. All new features were created using new git branches and merged into main from time to time. Gitflow Workflow
  • Issues, Ideas and Todos were tracked using a board for each sprint - Design, Build & Adapt

App Permissions

  • Internet access
  • Access to camera
  • Access to microphone
  • Access to Storage

Demo

Click to play

Demo

- Screenshots

Project References

Wiki

Please head to the Wiki page here.

License

Microsoft Teams Clone is released under the MIT License.

Connect with me

Drop by and say hello!