c120357259
Works but very rough code
65 lines
1.9 KiB
Markdown
65 lines
1.9 KiB
Markdown
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
|
|
[![Go Report Card](https://goreportcard.com/badge/gitlab.com/khanzf/fedilogue)](https://goreportcard.com/report/gitlab.com/khanzf/fedilogue)
|
|
|
|
|
|
# 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
|
|
|
|
This code was written on Go 1.16.
|
|
|
|
### Build Fedilogue
|
|
|
|
```
|
|
git clone https://gitlab.com/khanzf/fedilogue
|
|
cd fedilogue/fedilogue
|
|
go build
|
|
```
|
|
|
|
There should now be a `fedilogue` executable in the project directory.
|
|
|
|
### Fedilogue Control
|
|
|
|
```
|
|
cd fedilogue/fedictl
|
|
go build
|
|
```
|
|
|
|
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
|
|
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
|
|
|
|
Ping me at [@fikran@thebag.social](https://thebag.social/@fikran)
|