Need help with Enigma?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

354 Stars 124 Forks GNU Affero General Public License v3.0 41 Commits 11 Opened issues


A full-fledged one-to-one chat app developed entirely in Flutter

Services available


Need anything else?

Contributors list

# 112,882
30 commits

Awesome Flutter


Enigma - A minimalist, locked-down one-to-one chat app.


  • Flutter - Get Started
  • Since this is a Firebase dependent project, create a Firebase Project and enable
    • Firebase Phone Authentication (for authentication)
    • Cloud Firestore (not Realtime Database)
    • Firebase Storage (for storing images)
    • Firebase In-App Messaging (for custom messages)
  • After enabling the above features, download the
    and paste it in
  • Do
    flutter packages get
    to get the packages.
  • Use a device or an emulator and run
    flutter run


  1. Enable FCM in your Firebase Console.
  2. Notifications use Cloud Functions. Copy the
    directory to the root of your project.
  3. Do
    firebase deploy --only functions
    You need to have
    installed for this command to execute.


Screenshot #1

Firebase Rules for Storage and Cloud Firestore

I've used the following basic rule

allow read, write: if request.auth.uid != null;

but you can be more restrictive if you so wish. For more info - Get Started on Writing Rules

Get it on Google Play

Google Play and the Google Play logo are trademarks of Google LLC.


Authentication: Passcode authentication is enabled which is needed to unlock hidden and locked chats. If your device supports fingerprint authentication, then you can use it as well.

End-To-End Encryption: Your messages are encrypted right from the moment you send it. This makes sure that only the recipient receives the message and NO ONE ELSE.

Hide Chats: You can hide chats to protect against prying eyes. YOU will have to authorize to unhide the chats.

Lock Chats: Hidden chats not secure enough? Lock individual chats which only open after YOU have authorized it.

End Conversations: Once you're done with a conversation, you can choose to end it, by swiping your friend's message from left to right. Doing so will delete all the conversation up until that message.

Save messages: Double tap on any message to save it locally. Saved messages can be viewed by swiping right to left on the chat screen.

No pesky notifications: We do not believe in keeping users addicted to our app by frequent notifications. Chat when you feel like it. We do not bother you with notifications.

No forwarding: Enigma is developed to be an intimate one-to-one chat application. There's no option for forwarding messages. Hence no fake news.

Beautiful, minimal UI: The UI is uncluttered and beautiful. Gestures are used to make it pragmatic instead of using additional screen space.

Less than 10 MB: All the above features are tucked under a measely < 10 MB APK Size.


Passcode Widget: Apache 2.0 License

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.