This is an Elixir client for the Bluesky / AT protocol.
make buildHere's an example CLI session:
make consoleusername = "username"
password = "password"
pds = "https://bsky.social"
creds = %BlueskyEx.Client.Credentials{
username: username,
password: password
}
session = BlueskyEx.Client.Session.create(creds, pds)
# Fetch 15 skeets from the timeline
popular = BlueskyEx.Client.RecordManager.get_timeline(session, limit: 15)
# Make a skeet with the text content "skeet"
post = BlueskyEx.Client.RecordManager.create_post(session, text: "skeet")See Hexdocs.
This project uses credo and formatter for style consistency. Please run
mix formatand
mix credo -a --strictbefore committing changes.
Typespecs are validated through dialyzer.
mix dialyzerAs a shortcut, you can run
make lintto run all three of the above commands before authoring a commit.
All public functions "should" be tested exhaustively, but coverage is spotty right now -- contributions are welcome.
You can run the test suite with
make test-unitAll public modules and their functions should be documented with the appropriate typespecs.
This library uses ExDoc conventions for documentation. You can run
make docsto build the docs and open them in your local environment.
MIT