versia-go/README.md
2024-08-13 01:18:14 +02:00

1.3 KiB
Raw Blame History

Versia-Go

Versia-Go is a experimental implementation of the (not yet renamed :P) Versia protocol written in Go.

Compatibility level: Lysand 3.1 (sort of)

⚠️ This project is still in development and is not ready for production use.

Developing

Requirements

  • Go 1.22.5+
  • Docker + Docker Compose v2

Running

git clone https://github.com/lysand/versia-go.git
cd versia-go

docker compose up -d nats

touch .env.local
# Add the changed variables from .env to .env.local

go run .

TODO

  • Notes
    • API
      • Allow choosing the publishing user
    • Federating notes
  • Follows
    • API
    • Automatic follows for public users
    • Unfollows (scheduled for Lysand Working Draft 4)
      • API
  • Users
    • API
      • Create user
    • Lysand API
      • Get user (from local)
      • Webfinger
      • Inbox handling
        • Federated notes
        • Federated unfollows
        • Federated follows
    • Receiving federated users
  • Web
  • Extensions
    • Emojis

License

Versia-Go is licensed under the GNU Affero General Public License v3.0.

See LICENSE for more information.

This project might get relicensed to a different license in the future.