/matrix-floppy

Save your Matrix history

Primary LanguagePythonBSD 2-Clause "Simplified" LicenseBSD-2-Clause

matrix-floppy 💾

Save your Matrix history.

PyPI License

Motivation

My motivation for writing this application is to give me an offline browseable and searchable archive of my Matrix chat history. This can be handy if my homeserver is down, or if I want to move homeserver, or just to be able to search encrypted chat history without needing to use Element Desktop.

Features

Metadata:

  • User nicknames
  • User avatars
  • Room aliases
  • Room avatars

Event/media:

Type Unencrypted Encrypted
Joins/parts/kicks [ ] [ ]
Plain text messages [x] [x]
Formatted messages [x] [x]
Images [x] [ ]
Videos [x] [ ]
Audios [x] [ ]
Files [ ] [ ]
Reactions [ ] [ ]
Bad/Unknown Events [ ] [ ]

Operation modes:

  • Batch
  • Real-time client
  • Real-time application service

Output formats:

  • HTML
  • Plain-text
  • JSON

Installation

Use python3 setup.py install to install this package. You can do this system-wide or inside a virtualenv at your preference.

For development, dependencies are managed using the Pipfile although a requirements.txt file is also provided, generated via a make target.

License

Copyright (C) Iain R. Learmonth 2021. See COPYING for permissions.