# Fedilogue

Fedilogue is a fediverse cataloging and search platform. The intention is to create a centralized search
system for use by fediverse users and APIs.

## How does Fedilogue gather data?

Fedilogue employs multiple methods to gather post and account data.
* Through publicly accessible timelines
* Through privately accessible timelines, requiring an account on a given instance
* Through publicly accessible relays
* Through followed users using a mass following agent (planned)

## Supported Instances

Fedilogue can receive posts from any instance that supports the ActivityPub protocol. However, it can only
pull from instances that use the Mastodon API, which includes Pleroma.

## How to run

### Go version

Requires at least Go 1.5 or above

### Install Go Dependencies

Install the following requirements

```
go get muzzammil.xyz/jsonc
go get github.com/jackc/pgx/pgxpool
go get github.com/microcosm-cc/bluemonday
```

### Build Fedilogue

```
git clone https://gitlab.com/khanzf/fedilogue
cd fedilogue
make
```

There should now be a `fedilogue` executable in the project directory.

### Configuration

Fedilogue is configured by the `config.jsonc` file. Start by copying the `config.jsonc.sample` file to
`config.jsonc` and edit the file with your use-case values. The configuration file is written in jsonc and
has enclosed 

## Contact

Ping me at [@fikran@islamicate.space](https://islamicate.space/fikran)