versia-go/README.md

66 lines
1.4 KiB
Markdown
Raw Normal View History

2024-08-11 03:51:22 +02:00
# Versia-Go
2024-08-24 17:01:16 +02:00
Versia-Go is a experimental implementation of the (not yet renamed :P) [Versia](https://versia.pub) protocol written in
2024-08-11 03:51:22 +02:00
Go.
2024-08-24 17:01:16 +02:00
> Compatibility level: Versia Working Draft 4.0
2024-08-11 03:51:22 +02:00
> ⚠️ This project is still in development and is not ready for production use.
> In this phase no pull requests will be accepted and code may often break.
2024-08-11 03:51:22 +02:00
## Developing
### Requirements
- Go 1.22.5+
- Docker + Docker Compose v2
### Running
```shell
2024-08-28 00:25:25 +02:00
git clone https://github.com/versia-pub/versia-go.git
2024-08-11 03:51:22 +02:00
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
- [x] Federating notes
- [ ] Follows
- [ ] API
- [x] Automatic follows for public users
- [ ] Unfollows (scheduled for Versia Working Draft 4)
2024-08-11 03:51:22 +02:00
- [ ] API
- [ ] Users
- [ ] API
- [x] Create user
- [ ] Versia API
2024-08-11 03:51:22 +02:00
- [x] Get user (from local)
- [x] Webfinger
- [ ] User discovery
2024-08-11 03:51:22 +02:00
- [ ] Inbox handling
- [ ] Federated notes
- [ ] Federated unfollows
- [x] Federated follows
- [x] Receiving federated users
- [ ] Web
- Extensions
- [ ] Emojis
## License
Versia-Go is licensed under the GNU Affero General Public License v3.0.
See [LICENSE](LICENSE) for more information.
> This project might get relicensed to a different license in the future.