This project contains a demo messenger for communicating with each other without knowledge of English in English (through a translator), created using Kotlin and Firebase.
The ideology of the project is to improve the level of English by communicating with each other, sending a message in Russian, it is translated into English and saved in both languages. It is possible to send a message in English (if you know how to write a sentence in English) – it will be translated into Russian and saved in both languages. Upon receipt, all messages are displayed in English.
To get started you need to first create a Firebase project for your app and add the google-service.json file in your project. After adding the google-services.json file, you need to create a database in Firebase Authentication, Firebase Database, Firebase Storage. Firebase Authentication needs to allow user registration by email.
Youtube video playlist application demonstrations
At https://youtube.com/playlist?list=PLHp7NVeHwucb-5u-yGrOEEU5x39rkwq2j , you can go to a youtube video playlist of short demo videos of the application.
- Clean Architecture – Clean architecture in Android.
- MVVM – Architectural pattern.
- Coroutines – Asynchronous programming.
- View Binding – Declaratively bind observable data to UI elements.
- ViewModel – Store UI-related data that isn’t destroyed on app rotations. Easily schedule asynchronous tasks.
- Lifecycles – Create a UI that automatically responds to lifecycle events.
- LiveData – Build data objects that notify views when the underlying database changes.
- Navigation – Handle everything needed for in-app navigation.
- Firebase – Tools to develop high-quality apps.
- Dagger Hilt – Standard library to incorporate Dagger dependency injection into an Android application.
- SDP – Scalable size unit.
- SSP – Scalable size unit for text.
- Android Image Cropper – Powerful (Zoom, Rotation, Multi-Source), customizable (Shape, Limits, Style), optimized (Async, Sampling, Matrix) and simple image cropping library for Android.
- Picasso – Load and cache images by URL.
- Groupie – Groupie is a simple, flexible library for complex RecyclerView layouts.
- Ml-Kit Translator – Ml-Kit translator API.
- Ml-kit Language – Ml-Kit language id identificator for text.
Find this repository useful? ❤
Support it by joining stargazers for this repository 🌟