In the last few days I took some time to develop a few things. And it has to do with bubbles ;-)
I developed "Bubbly" - a small tool that parses different Messenger Export and Backup formats and visualize the data in HTML Bubble View. The data is filterable, searchable, taggable and media files are supported.
The tool can be found at https://github.com/kalink0/bubbly. It is Python based CLI-application and I have built versions for Linux and Windows on Github.
How do the bubbles look?
This part can be collapsed. And one can load or export created tags and go back to the overview page
Current implemented parsers
Currently I have the following parsers implemented:
1. WhatsApp Chat Export
This parser parses the Chat Export from the iOS and Android WhatsApp app.
Because the Output is different based on the system language -> currently fully supported are German and English. But I work on a more robust implementation.
2. Wire Messenger Backup
Parses Wire backup files - only unencrypted backups are supported atm.
3. Telegram Desktop Chat Export
Parses Chat Exports frorm the Telegram Desktop App.
4. Threema Backup Parser
Parses Backup of the Messenger Threema. But: the data needs to be decrypted before parsing - no decryption feature.
5. Generic JSON Parser
I've built a generic JSON parser with a simple JSON design. Also a mapping script is in my repo. The main idea: just create the simple json for a messenger, Bubbly is doing the rest to get the bubbles.
Additional functionality
Why did I develop it?
Main reasons:
- Easy to use and to hand over to other persons - especially the Bubble View and the media file support in a directly usable HTML.
- Fast to implement new parsers for not so well known formats/messengers (Exports and Backups)
- Basic filtering, searching and tagging functionality
Well, I needed a fast way to visualize the basic information from Exports and Backups of different messengers. That is what I focused on. And the bubble view is the one that everyone - also non technical persons, know and understand, so I wanted this view.
The limitations - or - what is Bubbly NOT
Bubbly is not a "Forensic Chat Analysis Tool". It focus on the data from Exports and Backups and gives additional possibility to create bubble view of other messengers with mostly less functionality. I don't plan to support any parsing of the well known messengers like Signal, WhatsApp, Telegram on Android and iOS with full functionality support for all they have (e.g. statuses, answering messages, forwarding messages, reacting etc.) with Bubbly. There are other tools out there to do this.
I want to keep it as simple as possible.
Also there won't be any export functionality - I thought about it first - but the simple used platform and the use of web-browsers limit the functionality. Tagging and export/import of them is possible - so one can share them at least.
I tested Bubbly with data sets with around 20000 messages per thread (incl. media files) - without any problem - but there will be a limit for sure ;-)