Fast, fun, small ActivityPub server.
Find a file
Tobi Smethurst b4288f3c47
Timeline manager (#40)
* start messing about with timeline manager

* i have no idea what i'm doing

* i continue to not know what i'm doing

* it's coming along

* bit more progress

* update timeline with new posts as they come in

* lint and fmt

* Select accounts where empty string

* restructure a bunch, get unfaves working

* moving stuff around

* federate status deletes properly

* mention regex better but not 100% there

* fix regex

* some more hacking away at the timeline code phew

* fix up some little things

* i can't even

* more timeline stuff

* move to ulid

* fiddley

* some lil fixes for kibou compatibility

* timelines working pretty alright!

* tidy + lint
2021-06-13 18:42:28 +02:00
.github fix lint errors 2021-03-20 19:44:18 +01:00
assets replace sloth with cuter sloth 2021-03-20 19:16:21 +01:00
cmd/gotosocial Move a lot of stuff + tidy stuff (#37) 2021-05-30 13:12:00 +02:00
docs try some doc changes 2021-03-01 11:52:49 +01:00
example Api/v1/accounts (#8) 2021-04-01 20:46:45 +02:00
internal Timeline manager (#40) 2021-06-13 18:42:28 +02:00
scripts Api/v1/statuses (#11) 2021-04-19 19:42:19 +02:00
testrig Timeline manager (#40) 2021-06-13 18:42:28 +02:00
web/template Oauth/token (#7) 2021-03-22 22:26:54 +01:00
.gitignore auth flow working for code 2021-03-18 23:27:43 +01:00
CONTRIBUTING.md draft CoC 2021-05-15 12:43:53 +02:00
Dockerfile first draft of Dockerfile 2021-05-23 23:43:04 +02:00
go.mod Timeline manager (#40) 2021-06-13 18:42:28 +02:00
go.sum Timeline manager (#40) 2021-06-13 18:42:28 +02:00
LICENSE add docs and a bunch of other stuff 2021-02-28 15:17:18 +01:00
PROGRESS.md Tidy + timeline embetterment (#38) 2021-05-31 17:36:35 +02:00
README.md add progress list 2021-03-20 18:41:10 +01:00

GoToSocial

patrons receives

Federated social media software.

Sloth logo made by Freepik from www.flaticon.com

GoToSocial is a Fediverse server project, written in Golang. It provides an alternative to existing projects such as Mastodon, Pleroma, Friendica, PixelFed etc.

One of the key differences between GoToSocial and those other projects is that GoToSocial doesn't include an integrated front-end (ie., a webapp). Instead, like the Matrix.org's Synapse project, it provides only a server implementation and a well-documented API. On this API, developers are free to build any front-end implementation or mobile application that they wish.

Because the server implementation is as generic and flexible/configurable as possible, GoToSocial provides the basis for many different types of social media experience, whether Tumblr-like, Facebook-like, or Twitter-like.

Goals

The first goal of the project is to implement a feature set comparable to Mastodon: server logic, federation logic, and a client API that's a superset of the Mastodon API described here.

Once the client API is implemented, it should allow existing Mastodon apps like Tusky and Whalebird to work with GoToSocial.

After that, custom features will be added that will necessitate expanding the API.

Wishlist

Among other things:

  • Reputation-based 'slow' federation.
  • Granular post settings.
  • Local-only posting.
  • Easily-configurable character limit.
  • Groups and group posting.

Implementation Status

For an up-to-date view on progress made towards a v1.0.0 release, see here.

Contact

For questions and comments, you can reach out to Tobi on the Fediverse here or mail admin@gotosocial.org.

Sponsorship

Currently, this project is funded using Liberapay, to put bread on the table while Tobi works on it. If you want to sponsor this project and get your name on this repo, you can do so here! <3

Sponsors

None yet! Go For It

Image Attribution

Logo made by Freepik from www.flaticon.com.