A cross-platform app ecosystem, bringing iMessage to Android, PC (Windows, Linux, & even macOS), and Web!

Last update: Jun 24, 2022

BlueBubbles Android App

BlueBubbles is an open-source and cross-platform ecosystem of apps aimed to bring iMessage to Android, Windows, Linux, and more! With BlueBubbles, you'll be able to send messages, media, and much more to your friends and family.

**Please note that BlueBubbles requires a Mac and an Apple ID to function! A macOS VM on Windows or Linux can suffice as well.

Key Features:

  • Send & receive texts, media, and location
  • View tapbacks, reactions, and stickers
  • Create new chats (macOS 11+ has limited support while macOS 10 has full support)
  • View read/delivered timestamps
  • Mute or archive conversations
  • Robust theming engine
  • Choose between an iOS or Android-style interface
  • Lots of customizations and options to personalize your experience

Private API Features:

  • Send tapbacks
  • See typing indicators
  • Send read receipts

Private API Features are not enabled by default and require extra configurations. Details can be found in the settings page of the app.

If you need help setting up the app, have any issues or feature requests, or just want to come hang out, feel free to join our Discord, linked below! We hope you enjoy using the app!

Useful links

  • Our Website: here
  • Discord: here!
    • We highly encourage users to join to get in direct communication with the developers and community
  • GitHub: here
    • Please submit any issues with the app here so we can properly track them! Remember to search before opening a ticket :)
    • Contribution is always appreciated and needed! Feel free to download our source, make changes, and submit a pull request.

Getting Started

All Android builds can be found in here.

All Server builds can be found in here.

After downloading both, follow our tutorial here.

Contributing

Please check out our contribution guide here: Contribution Guide

GitHub

https://github.com/BlueBubblesApp/bluebubbles-app
Comments
  • 1. Crashes After QR Code Scan

    Not able to complete setup. Once the setup QR code is scanned the app crashes. Opening the app again immediately crashes it. The only way to get the app open again is to clear storage, force stop, and relaunch. Same issue loop.

    Reviewed by pjpugliese at 2020-11-21 21:40
  • 2. Tapback/Details menu is bugged while in landscape mode

    On all messages, the buttons display much larger than they actually are, and on attachments with no caption, the screen goes gray like in issue #742

    Issue created by BlueBubbles Bot in the BlueBubbles commnity on behalf of @CSab6482 in #nightly-bugs.

    Reviewed by cynical89 at 2021-02-04 04:10
  • 3. [Feature Request] Add BlueBubbles to Linux app stores

    Part of why I chose to use Pop!_OS as my distro is because of the Pop!_Shop, an easy to use app store that has just about everything I need. Screenshot from 2021-10-19 17-18-06 Screenshot from 2021-10-19 17-13-08 I'm not too sure of the technical details on what kinds of packages it uses and all, but I do know that the Pop!_Shop does source from Flathub. Below is the link for the app submission process to Flathub. https://github.com/flathub/flathub/wiki/App-Submission Below is a screenshot example of installing Discord through the Pop!_Shop. Screenshot from Screencast from 10-19-2021 05:14:37 PM webm One valid complaint I saw about making BlueBubbles available on Linux app stores is that there are just too many app stores. For example, Canonical has their own called Snapcraft. I'm not sure which shops are the best or the most universal or any of that, but I do know the Pop!_Shop has the ability to add other sources, and I assume most other Linux app stores would offer that too. Let me know what you think.

    Reviewed by CSab6482 at 2021-10-19 21:22
  • 4. Handle "server-update" notification

    Add handler for the "server-update" event from FCM. It will contain a payload that is just a string/int containing the new version number. We should show a notification for this.

    Reviewed by zlshames at 2020-09-28 13:10
  • 5. ContactManager Error: type 'Null' is not a subtype of type 'String' of 'other'

    Contacts are not loading for me

    I'm not really a dart dev, but my gut here is that it's hitting a malformed contact entry and unable to skip over it:

    flutter: [BlueBubblesApp][2021-10-23 16:34:06.775652][INFO] (REQUEST[GET]) -> PATH: http://192.168.1.179:1234/api/v1/contact
    flutter: [BlueBubblesApp][2021-10-23 16:34:06.849787][INFO] Progress: 8% of the attachment
    flutter: [BlueBubblesApp][2021-10-23 16:34:06.849891][INFO] Added process with id 9245 because Attachment downloader 614141AA-3D63-4905-BA62-4296E6459BCF
    flutter: [BlueBubblesApp][2021-10-23 16:34:06.850088][INFO] (MessageBloc) -> No message chunks left from server
    flutter: [BlueBubblesApp][2021-10-23 16:34:06.850114][INFO] (MessageBloc) -> Emitting 0 messages to listeners
    flutter: [BlueBubblesApp][2021-10-23 16:34:06.850171][INFO] (MessageBloc) -> No more messages to load
    flutter: [BlueBubblesApp][2021-10-23 16:34:07.109031][INFO] (RESPONSE[200]) -> PATH: http://192.168.1.179:1234/api/v1/contact
    flutter: type 'Null' is not a subtype of type 'String' of 'other'
    flutter: #0      ContactManager.getContacts (package:bluebubbles/managers/contact_manager.dart:135)
    <asynchronous suspension>
    #1      SetupBloc.finishSetup (package:bluebubbles/blocs/setup_bloc.dart:245)
    <asynchronous suspension>
    
    Reviewed by jpribyl at 2021-10-23 22:38
  • 6. Biometrics lock bug

    In the latest build, any action that requires authentication needs to authenticate twice. This also involves what seems to be an app switch between the two attempts, so if the app is set to Locked and Secured, it becomes impossible to unlock the app without a reinstall.

    Issue created by BlueBubbles Bot in the BlueBubbles commnity on behalf of @scarlett in #android-bugs.

    Reviewed by cynical89 at 2021-07-30 17:41
  • 7. Compress images on download instead of on load

    This is likely due to the attachment metadata being loaded into BB. Not sure why it lags the UI since it should all happen in the background. But maybe this is something we need to do via a dart VM so it doesn't lag the UI thread? Not sure

    Issue created by BlueBubbles Bot in the BlueBubbles commnity on behalf of @zach in #android-bugs.

    Reviewed by cynical89 at 2021-07-19 01:26
  • 8. [WIP] Better Pinned Chats — Like those on iOS 14

    Can't post screenshots for privacy reasons :(.

    Moved pinned chats to the top in a 3 by X grid like Apple added with iOS 14.

    THIS IS STILL WORK IN PROGRESS

    Reviewed by AidanLovelace at 2021-01-24 17:30
  • 9. SMS relay from Android App to iMessage Client on macOS

    Currently it seems that only iMessages sync over to the Android client. Any SMS received on the iOS device is not synced over even though I have the iPhone set to forward all texts to the Mac that has the bluebubbles server installed.

    Reviewed by clubtech at 2021-01-23 20:01
  • 10. placeholder text zach/nightly ux option doesnt change anything

    The option to set the placeholder text as the group or contact name doesn't work at all, it just always says BlueBubbles

    Issue created by BlueBubbles Bot in the BlueBubbles commnity on behalf of @Intellijence in #requests.

    Reviewed by cynical89 at 2021-01-14 03:40
  • 11. Bricktheworld/develop

    This PR removes unused imports, makes it possible to pin conversations on selection, makes all back buttons on material Icons.Arrow_back instead of icons.arrow_back_ios, and also changes the "You have no chats" text to "You have no archived chats". It also changes the color of the settings icon on Material to be white instead of grey.

    Reviewed by SoPat712 at 2020-12-30 20:17
  • 12. [1.10.0] Theme Rewrite Checklist

    • [ ] Chat title boldness should be lowered
    • [ ] Letter spacing should be a good bit less
    • [ ] Settings/Search buttons on the chat list have dark backgrounds when they should be light/match the background
    • [ ] Font size for message bubbles needs to be increased
    • [ ] Lower the boldness of the chat timestamp days, i.e. Today, 11:00 am, "Today" is too bold
    • [ ] Change right carot character, > next to chat title in the conversation view to a character that looks more like the iOS carot character (less pointy, broader in a sense)
    • [ ] Add Member and Show More button icons in chat details page are not centered
    • [ ] The background circles for pinned chats on iOS theme should have a different color. One to distinguish it from the background and the avatar circles
    Reviewed by zlshames at 2022-06-26 20:33

Related

A cross-platform (Windows/macOS) scanner plugin for Flutter

quick_scanner A cross-platform (Windows/macOS) scanner plugin for Flutter Usage QuickScanner.startWatch(); var _scanners = await QuickScanner.getScan

Jun 10, 2022
🎵 A cross-platform media playback library for C/C++ with good number of features (only Windows & Linux).
🎵 A cross-platform media playback library for C/C++ with good number of features (only Windows & Linux).

libwinmedia A cross-platform media playback library for C/C++ & Flutter with good number of features. Example A very simple example can be as follows.

Jun 24, 2022
Flutter on Windows, MacOS and Linux - based on Flutter Embedding, Go and GLFW.
Flutter on Windows, MacOS and Linux - based on Flutter Embedding, Go and GLFW.

go-flutter - A package that brings Flutter to the desktop Purpose Flutter allows you to build beautiful native apps on iOS and Android from a single c

Jun 27, 2022
Serverpod is a next-generation app and web server, explicitly built for the Flutter and Dart ecosystem.
Serverpod is a next-generation app and web server, explicitly built for the Flutter and Dart ecosystem.

Serverpod Serverpod is a next-generation app and web server, explicitly built for the Flutter and Dart ecosystem. It allows you to write your server-s

Jun 24, 2022
🎞 Flutter media playback, broadcast & recording library for Windows, Linux & macOS. Written in C++ using libVLC & libVLC++. (Both audio & video)
🎞 Flutter media playback, broadcast & recording library for Windows, Linux & macOS. Written in C++ using libVLC & libVLC++. (Both audio & video)

dart_vlc Flutter media playback, broadcast, recording & chromecast library for Windows, Linux & macOS. Written in C++ using libVLC & libVLC++. Install

Jun 19, 2022
Flutter plugin for Flutter desktop(macOS/Linux/Windows) to change window size.

desktop_window Flutter plugin for Flutter desktop(macOS/Linux/Windows) to change window size. Usage import 'package:desktop_window/desktop_window.dart

May 27, 2022
File picker plugin for Flutter, compatible with mobile (iOS & Android), Web, Desktop (Mac, Linux, Windows) platforms with Flutter Go support.
File picker plugin for Flutter, compatible with mobile (iOS & Android), Web, Desktop (Mac, Linux, Windows) platforms with Flutter Go support.

A package that allows you to use the native file explorer to pick single or multiple files, with extensions filtering support.

Jun 22, 2022
A Flutter plugin to read 🔖 metadata of 🎵 media files. Supports Windows, Linux & Android.
A Flutter plugin to read 🔖 metadata of 🎵 media files. Supports Windows, Linux & Android.

flutter_media_metadata A Flutter plugin to read metadata of media files. A part of Harmonoid open source project ?? Install Add in your pubspec.yaml.

Jun 28, 2022
TinyPNG4Flutter - A TinyPNG Compress Image Desktop GUI For Flutter. Support macOS and windows
TinyPNG4Flutter - A TinyPNG Compress Image Desktop GUI For Flutter. Support macOS and windows

TinyPNG4Flutter A TinyPNG Compress Image Desktop GUI For Flutter. Support macOS

Feb 9, 2022
Flutter library for window blur & transparency effects for on Windows & Linux. 💙
Flutter library for window blur & transparency effects for on Windows & Linux. 💙

flutter_acrylic Window blur & transparency effects for Flutter on Windows & Linux Installation Mention in your pubspec.yaml. dependencies: ... flu

Jun 20, 2022
An 🎵 audio playback library for Flutter Desktop. Supports Windows & Linux. Based on miniaudio.
An 🎵 audio playback library for Flutter Desktop. Supports Windows & Linux. Based on miniaudio.

✒ libwinmedia is sequel to this project. It provides network playback, better format support, control & features. An audio playback library for Flutte

May 15, 2022
A pure Dart implementation of Firebase with initial support aimed at FlutterFire for Linux & Windows.

FlutterFire Desktop A work in progress pure Dart implementation of Firebase with initial support aimed at FlutterFire for Linux & Windows. A FlutterFi

Jun 29, 2022
A cross-platform flutter plugin for C/C++/ObjC crash report via Google Breakpad
A cross-platform flutter plugin for C/C++/ObjC crash report via Google Breakpad

quick_breakpad A cross-platform flutter plugin for C/C++/ObjC crash report via Google Breakpad Use breakpad for quick_breakpad_example $CLI_BREAKPAD i

Apr 26, 2022
Sharik is an open-source, cross-platform solution for sharing files via Wi-Fi or Mobile Hotspot
Sharik is an open-source, cross-platform solution for sharing files via Wi-Fi or Mobile Hotspot

Share files across devices with Sharik! It works with Wi-Fi connection or Tethering (Wi-Fi Hotspot). No internet connection needed. Contributing Feel

Jun 27, 2022
A Cross Platform Piano made with Flutter
A Cross Platform Piano made with Flutter

flutter_piano A Crossplatform Midi Piano built with Flutter.dev This application runs on both iOS and Android. This runs a custom crossplatform midi s

Jun 17, 2022
Flutter widgets and themes implementing the current macOS design language.
Flutter widgets and themes implementing the current macOS design language.

macos_ui Flutter widgets and themes implementing the current macOS design language. NOTE: This package depends on the excellent native_context_menu pl

Jun 24, 2022
A macOS plugin which can register a callback for a global keyboard shortcut.

global_shortcuts A macOS plugin which can register a callback for a global keyboard shortcut. As the shortcut is global, the callback will be triggere

Jun 4, 2022
Simple file explorer for desktop made with Flutter, highly inspired by macOS Finder

file_explorer A basic file explorer made with Flutter Getting Started This project is a starting point for a Flutter application. A few resources to g

Nov 7, 2021
A platform adaptive Flutter app for desktop, mobile and web.
A platform adaptive Flutter app for desktop, mobile and web.

Flutter Folio A demo app showcasing how Flutter can deliver a great multi-platform experience, targeting iOS, Android, MacOS, Windows, Linux, and web.

Jun 25, 2022