aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
blob: bbead54563c78ef89ca08b1113523dac770bbb7f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# ActorViewer

ActorViewer is a tool that allows one to explore their Fediverse data exports. It uses the Qt 5 library for its user interface, and builds fine with Qt 6. 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.

## 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.