/Talkufy-Android

Talkufy brings you everything you need. From chatting, video calling (Beta), translating messages, group chats and lots more.

Primary LanguageKotlinMIT LicenseMIT

GitHub forks GitHub all releases GitHub repo sizeGitHub repo size GitHub pull requests GitHub stars

Talkufy

A highly advanced and encrypted open source featured chat/video calling app for android using Firebase Firestore and Jitsi Meet. With this app you can chat and make calls with Jitsi Meet.

forthebadge

Why this project and a chat platform?

In this era of the social media craze and internet age, where smartphones have become a core part in peoples' lives. And with millions monthly active users on advanced chat apps such as Facebook Messenger, WhatsApp, WeChat, Telegram etc. We (consumers) have started taking these awesome features as for granted. This has become a trouble and headache for developers (especially those who provide development services or freelancing) to create such feature-rich platforms in constrained time.

So, Talkufy is an open-source feature-rich chat and video/audio calling platform (initially for Android) using Firebase's Cloud Firestore database and Jitsi Meet as backend. Android Developers can easily use this platform in their apps and integrate highly advanced feature-rich chat system within a short time.

Why Cloud Firestore and not SQL?

Cloud Firestore is an extended feature of Google Firebase and a real-time document-collection based database service that is an excellent choice if you don’t want to host your own server. With Firestore, you can have our demo chat app setup and running in under 30 minutes. Firestore has a powerful dashboard that gives you access to your data and a REST API if you need to access data from your server. Some advantages of Cloud Firestore include:

  • Self-Hosted
  • Scalable
  • Flexible Authentication
  • Realtime & Fast
  • Pay as you go, including Free Trial
  • Cross platform SDKs

Getting Started

To get started, you have to clone this repo by pasting this line of code into git.

git clone https://github.com/scooterthedev/Talkufy-Android.git

Feature List

Here's a list of features that we plan to include overtime.

  • Authentication (Email)
  • Phone Number Authentication
  • Text Messages
  • Image Messages
  • GIF Messages
  • Multiple Image Messages
  • Location Messages
  • Audio Messages
  • Video Messages
  • Link/URL Preview Messages
  • Reply Messages
  • Emojis Support
  • Online/Last Active Status
  • Message Read/Receipt Ticks
  • Unread Messages Count
  • Group Chats
  • Delete Messages
  • Translating Messages from different languages
  • Coping messages
  • Forwarding messages/images
  • Push Notifications
  • Typing Indicator
  • User Mentions
  • Chat / Group Media, Documents, and Links
  • Restore/Export from and to CSV File
  • Chat Heads
  • Block/Unblock Users

Features that are included in V1

  • Phone Number Authentication
  • Text Messages
  • Block/Unblock Users
  • Online/Last Active Status
  • Message Read/Receipt Ticks
  • Unread Messages Count
  • Translating Messages from different languages
  • Coping messages
  • Forwarding messages/images
  • Group Chats
  • Reply Messages
  • Emoji Support
  • Online/Last Active Status
  • Message Read/Receipt Ticks
  • Unread Messages Count
  • Delete Messages (Works for everything. This does not work for images without a caption)
  • Video Messages (Up to 16 MB so far)
  • Multiple Image Messages (Up to 5 per message)
  • Location Messages
  • Text Messages
  • Image Messages
  • Video Calling (in beta)
  • Audio Calling(in beta)

Get involved!

We're very excited about the project, and we're looking for other people to get involved. Over time, we would like to make the best messaging framework for Android. Help is always welcome. The more that is done, the better it gets!

How to Contribute

Contributions are the best! They help us fix active bugs and help us make new features which will make the app even better!

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Please make sure to update tests as appropriate. If you'd like to contribute, please fork the repository and make changes as you'd like. Pull requests are warmly welcome.

Steps to contribute:

  1. Fork this repository (https://github.com/scooterthedev/Talkufy-Android)
  2. Create your feature branch (git checkout -b )
  3. Commit your changes (git commit -am "Optional Message")
  4. Push to the branch that you just created (git push origin )
  5. Create a new Pull Request!

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Communication

Please feel free to PM me if you have any questions on GitHub, email or by using Slack

Donations:

​If you think that this project is super cool, and want to help out with the future devopment of Talkufy please consider donating. Talkufy will always be free because I feel that everyone should enjoy a great app for free, and not just the people that have the money to pay for them. Donating will allow me to keep Talkufy free of charge and it helps me a ton with the future development of Talkufy (Including allowing files more than 16MB to be sent at once).

Ethereum Address: 0x65c397b50F61A6fa71fA774A1ecc35EC089f7916

License

Copyright 2022 Talkufy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.