alexwennerberg / gourami

A decentralized social network for the small web, implemented in ActivityPub
GNU Affero General Public License v3.0
94 stars 5 forks source link

This repository is archived and not maintained. Many of the ideas informing it have informed my new project, Flounder

🐟gourami: A decentralized social network for the small web, implemented in ActivityPub

Build and Test

An intentionally small, community-focused ultra-lightweight decentralized social network.

image

Philosophy and Design

Gourami is...

Features that aren't implemented yet:

Gourami is not (really) part of the "Fediverse"

The Fediverse is a public network of servers that communicate mostly publicly on the open internet. There are advantages to this model, but also disadvantages:

Gourami is not anti-fediverse, but it follows a fundamentally different model for decentralization:

Gourami's model of federation is meant to decentralize not just on the level of architecture, but also on a social level -- where there is no central "fediverse" everyone participates in, but rather your server and the servers you choose to federate with. Gourami intends to mimic real world, physical communities, where a sense of place is restored.

Interop with other ActivityPub microblogging services is still a goal, but the manner in which servers network together is different than how Mastodon or other services.

Local Installation

If you're on a Linux environment, the easiest way to get started is with the precompiled binaries. You can find them at the releases page.

If you want to build Gourami yourself --

Make sure you have the following dependencies:

Install Rustup or Cargo.

Clone this repository with git clone https://github.com/alexwennerberg/gourami

Run cargo install --path .

Configuration & getting started

Configuration is done via dotenv. For development and testing, the sample_env file is good to get started for local testing -- copy it to .env in the same directory that you're running gourami.

Run the local server with gourami run

To create a user account:

Deployment

Gourami is in alpha / development stage.

I would love if you gave Gourami a shot, but be aware that issues may arise. If you would like to follow or join my server, please reach out to me! I'm also happy to help anyone set up their instance. More information on setting up a server is available in the admin guide.

References

Many projects inspired my work here, and I want to mention them.

Logo from https://twemoji.twitter.com/