A modern chat app that puts inclusivity first and allows seamless conversation between the disabled and others.
- Clone the project
- cd
NeoChat - cd
mobile-app - Open this project in Andorid Studio
- Grab your
YOUR_API_KEYfrom https://assemblyai.com - Go to Firebase console and create a new project.
- Setup and add this android app to the project.
- Enable authentication, cloud firestore and storage.
- Download and paste
google-services.jsonfile inside/app - Now, in your local.properties add the block
ASSEMBLY_AI_KEY = YOUR-API-KEY
FIREBASE_STORAGE_PATH = YOUR_FIRBASE_STORAGE_PATH
FIREBASE_ATORAGE_URL = YOUR_FIREBASE_ATORAGE_URL
- Build and run
- Kotlin - First class and official programming language for Android development.
- Coroutines - For asynchronous calls and tasks to utilize threads.
- Jetpack Compose UI Toolkit - Modern UI development toolkit.
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- StateFlow and SharedFlow - StateFlow and SharedFlow are Flow APIs that enable flows to optimally emit state updates and emit values to multiple consumers.
- Dependency Injection -
- Dagger-Hilt - A standard way to incorporate Koin dependency injection into an Android application.
- Hilt-ViewModel - DI for injecting
ViewModel.
- Material Components for Android - Modular and customizable Material Design UI components for Android.
This app uses MVVM(Model View View-Model) and Clean architecture.
-
The user authenticates and provides information.
-
The user then is able to send text, image and voice messages to others.
-
On the receiver’s side, the processing happens. If the receiver is
- Deaf: All audio files sent to the receiver is transcribed to text which shows up a as a regular text message.
- Color-blind: All image files go through a color filter to assist them with visibility. It aims to cater 7 different conditions: deuteranopia, protanopia, tritanopia, tritanomaly, deuteranomaly, cone monochromacy and rod monochromacy.
- Blind: All text messages sent to the receiver is synthesized to speech which shows up a voice message.

