gourami

[UNMAINTAINED] Activitypub server in Rust
Log | Files | Refs | README | LICENSE

commit bcd101573213d577bd84e529f35a37132736684d
parent 16c7a8ded0ecbfcaa3b7be228aef9561f801f395
Author: alex wennerberg <alex@alexwennerberg.com>
Date:   Thu, 30 Apr 2020 10:58:46 -0500

Add drafts of admin / user guides

Diffstat:
AADMIN_GUIDE.md | 32++++++++++++++++++++++++++++++++
AUSER_GUIDE.md | 21+++++++++++++++++++++
2 files changed, 53 insertions(+), 0 deletions(-)

diff --git a/ADMIN_GUIDE.md b/ADMIN_GUIDE.md @@ -0,0 +1,32 @@ +(WIP -- it doesnt actually work like this yet) + +# Admin Guide + +If you want to administer a Gourami server, you'll need a few technical skills: + +1. Basic Linux sysadmin skills -- ability to set up a webserver. +2. Basic SQL knowledge -- ability to query and insert records. Right now, Gourami does not have an admin interface or admin tools, so certain actions (such as resetting a user's password or deleting a post or account) will require manual SQL intervention. + +## Inviting users + +Gourami is invite-only. Right now, you create an invite by adding a record to the invitation_keys table and sharing that key with the user you're inviting. + +## Social guidelines + +Gourami is built for small deployments -- I have not tested it or designed it for larger implementations. This gives users a lot more flexibility, but requires more trust on your end. For example, a user may be easily able to spam the timeline, spam everyone's notifications, DOS the server, etc, so as an admin you should only allow people on your instance that you trust. You will also find that the quality of the shared timelines will begin to degrade after too many users. If you're still interested in attempting a larger Gourami deployment, I won't stop you, but beware that you're in uncharted territory. + +I'm not big into formal rules or codes of context, but if you feel like that's important for your server, you may want to put it in your server message. + +## Securing your server + +I would recommend following basic Linux syadmin best practices: disable password login, consider a hardened Linux distro, set up a firewall, etc. I'm not a security expert here, I would recommend following guides produced by those who are. + +## Gourami's ActivityPub implementation + +(maybe this should be somewhere else -- like a dev guide) + +## Federation -- the "neighborhood" + +## Passwordless local deployment + +Don't do this on the public internet, it is a bad idea and will only lead to ruin! Seriously, don't do it. diff --git a/USER_GUIDE.md b/USER_GUIDE.md @@ -0,0 +1,21 @@ +(WIP -- it doesnt actually work like this yet) + +# User Guide + +You will get a notification when someone tags your username in a post or if they reply to your post. + +## Creating a note + +Enter your text in the note box, then click create note. The first post that you tag (via 📝X or >>X, where X is the post number) will be considered a post you're replying to. For the purposes of threading, you cannot reply to multiple notes. #TODO implement + +For every local post or user that you tag in a note, that post / user's owner will receive a notification. + +## Audiences + +Whenever a user creates a note, that note is visible to all the users on this server, which can be seen on the "local" timeline". + +Gourami has a feature called the "neighbhorhood", which allows one Gourami server to communicate with other social media services. + +The Neighbhorhood timeline consists of all other [ActivityPub](http://activitypub.rocks/) services. If you're not familiar with ActivityPub, it's a shared language that allows different social media applications to communicate with each other. This means that two services that both implement ActivityPub (such as Gourami and [Mastodon](https://joinmastodon.org/) should be able to communicate with each other. In practice, there may be differences between each individual ActivityPub services, + +todo -- explain more