# ActorViewer ActorViewer is a tool that allows one to explore their Fediverse data exports. It uses the Qt 6 library for its user interface, and also builds fine with Qt 5 if you still need that. Currently, ActorViewer allows doing the following: * Open Mastodon data exports (make sure to have them decompressed and open the outbox.json file!) * Support for other Fediverse platforms will be added in the future, in addition to presenting a smarter UI for opening exports. Also, automatic decompression of downloaded exports would be handy. * Filter through types of posts: public, unlisted, private, boosts… * Search through your posts with a fun scroll bar to navigate through search results * View embedded media and polls in posts * View all information about the activities in the Mastodon outbox.json ActivityStream * Go to a random status! * Copy the status text Furthermore, support for viewing replies to your posts will be added. I also want the app to have translation support (and be translated) before making a release. It could also be nice to make it a sort of lightweight Fediverse client, but no guarantees as it might be a little out of scope. ## Building To build, have a C++17-compliant compiler, CMake 3.9 or later, and the Qt 5 or 6 library installed. This repo uses git submodules which can be fetched by recursively cloning (`git clone --recurse-submodules`) or initializing submodules afterwards (`git submodule update --init`). That should get dependencies which currently are [mastodonpp](https://schlomp.space/tastytea/mastodonpp/). Note that when asking CMake to generate the build files, you can disable mastodonpp support by passing `-DMASTODONPP_BUILD=0`. Simply said, after installing CMake and Qt from your package manager, do the following to build the project: ``` git clone --recurse-submodules https://git.twilightsparkle.space/ActorViewer && cd ActorViewer # Generate build files (initially and if CMakeLists.txt changes) cmake -B build -DCMAKE_BUILD_TYPE=Debug # Build! cmake --build build -j$(nproc --all) --target all ``` I plan to make a Flatpak in the near future so that manually building will not be necessary.