TomCools / AT-Protocol-Java

WORK IN PROGRESS: Contains tools to work with the AT Protocol: https://atproto.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AT-Protocol-Java

Tools for working with the https://atproto.com/, new social network technology created by Bluesky.

Note 1: This repository is not affiliated with the Bluesky PBLLC company. As we are not in control of the specification itself, we can’t guarantee that these tools will always be in sync with the specification.

Note 2: This is currently a project in buildup. Use of this code, either from dependencies or by directly copying it is at own risk.

This project is Work in Progress ;)

Artifacts

  • at-protocol-codegen: Generates Java code from the Lexicon files.

  • at-protocol-codegen-maven-plugin: A Maven plugin which will generate the relevant Java Code during a Maven build.

  • at-protocol-client: A client, which can be used to connect to existing AT-Protocol servers, such as BlueSky Social Media. Mostly used to "Dogfood" the other modules for now.

TODO

  • Todo: Add more information ;)

  • Logging

  • Take constraints in schema into account.

  • UNION reference type

  • Create formatted subtypes (DID for example.)

  • Usage guide for the Maven Plugin

  • Usage guide for the Code Generator

  • Usage guide for the Code Client

Generated Code Guidelines

The https://atproto.com/specs/lexicon determines a couple of different types.

The most important ones are:

  • Objects: Generated as POJOs;

  • Query: Generated as Methods on the API class;

  • Procedures: Generated as Methods on the API class;

About

WORK IN PROGRESS: Contains tools to work with the AT Protocol: https://atproto.com/

License:MIT License


Languages

Language:Java 100.0%