fedilogue/README.md

65 lines
1.9 KiB
Markdown
Raw Normal View History

2020-12-17 01:39:57 +00:00
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
2020-12-29 20:21:38 +00:00
[![Go Report Card](https://goreportcard.com/badge/gitlab.com/khanzf/fedilogue)](https://goreportcard.com/report/gitlab.com/khanzf/fedilogue)
2020-12-17 01:39:57 +00:00
# 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
2021-10-01 05:08:32 +00:00
This code was written on Go 1.16.
2021-10-01 05:08:32 +00:00
### Build Fedilogue
```
2021-10-01 05:08:32 +00:00
git clone https://gitlab.com/khanzf/fedilogue
cd fedilogue/fedilogue
go build
```
2021-10-01 05:08:32 +00:00
There should now be a `fedilogue` executable in the project directory.
### Fedilogue Control
2020-12-17 01:14:06 +00:00
```
2021-10-01 05:08:32 +00:00
cd fedilogue/fedictl
go build
2020-12-17 01:14:06 +00:00
```
2021-10-01 05:08:32 +00:00
Using the executable `fedictl`, you can now view the running state of instances or manually add a new instance for polling.
### 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
2020-12-17 01:38:59 +00:00
has enclosed explanations that should be self-explanatory.
### Generate private and public key
```
cd fedilogue
mkdir -p keys
openssl genrsa -out keys/private.pem 3072
openssl rsa -in keys/private.pem -pubout -out public-key.pem
```
## Contact
2021-10-01 05:08:32 +00:00
Ping me at [@fikran@thebag.social](https://thebag.social/@fikran)