aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md89
1 files changed, 8 insertions, 81 deletions
diff --git a/README.md b/README.md
index cea9d52..28989cc 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
`adenosine`: enthusiast-grade implementation of atproto.com in Rust
===================================================================
-**Status:** it doesn't even work yet and will eat your data
+**Status:** it doesn't really work yet and will eat your data
This is a hobby project to implement components of the proposed Bluesky AT
Protocol ([atproto.com](https://atproto.com)) for federated social media, as
@@ -16,95 +16,22 @@ initially announced in Fall 2022. This might be interesting for other folks to
take a spin with, but isn't intended to host real content from real people. The
goal is to think through how the protocol might work by implementing it.
-Components planned:
+Components:
-- `adenosine-cli`: command-line client (`adenosine`), partially implemented and working
-- `adenosine-pds`: "small world" personal data server implementation, with data in sqlite, not implemented
+- `adenosine-cli` ([README](./adenosine-cli/README.md): command-line client (`adenosine`)
+- `adenosine-pds` ([README](./adenosine-pds/README.md): "small world" personal data server implementation, with data in sqlite
-Not currently planning on implementing the `did:plc` method. Would just stick
-with `did:web` for now, either manually placing `/.well-known/did.json`
-documents on existing servers or trying a wildcard DNS hack.
-## Quickstart (CLI)
-To work with an actual PDS server, you will need to get the
-[`bluesky-social/atproto`](https://github.com/bluesky-social/atproto) prototype
-PDS up and running locally. There is a separate
-[quickstart](./notes/atproto_quickstart.md) on how to get that going.
+## Development and Contributions
-If you run a Debian-base Linux distribution, you might be able to install an
-existing package (TODO: link). Otherwise, you'll need to build the CLI tool
-from source. Install a recent version of the Rust programming language
-toolchain (eg, using [`rustup`](https://rustup.rs/)
-
-The top level workplace includes the GUI and PDS code, which include huge
-dependency trees and are very slow to build. If you just want the CLI, enter
-the `adenosine-cli` directory before running any `cargo` commands.
-
-To build, test, and locally install just the CLI (using `cargo`):
-
- cd adenosine-cli
- cargo install
-
-To start interacting with a PDS, set the `ATP_HOST` environment variable. Then
-either register a test account, or create a new session for an existing
-account, and save the JWT token to the `ATP_AUTH_TOKEN`:
-
- # default port for bluesky-social/atproto implementation
- export ATP_HOST=http://localhost:2583
-
- # register a new account
- adenosine account register -u voltaire.test -p bogus -e voltaire@example.com
- {
- "did": "did:plc:yqtuksvatmmgngd5nkkw75hn",
- "jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJkaWQ6cGxjOnlxdHVrc3ZhdG1tZ25nZDVua2t3NzVobiIsImlhdCI6MTY2Njk5NjMwNn0.MMQa4JIQdwvhy-rjJ0kO-z8-KdoOL0Lto9JtOkK-lwE",
- "username": "voltaire.test"
- }
-
- export ATP_AUTH_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJkaWQ6cGxjOnlxdHVrc3ZhdG1tZ25nZDVua2t3NzVobiIsImlhdCI6MTY2Njk5NjMwNn0.MMQa4JIQdwvhy-rjJ0kO-z8-KdoOL0Lto9JtOkK-lwE
-
- # to clear the auth token env variable
- unset ATP_AUTH_TOKEN
-
- # create a new session (login) for existing account
- adenosine account login -u voltaire.test -p bogus
- {
- "did": "did:plc:yqtuksvatmmgngd5nkkw75hn",
- "jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJkaWQ6cGxjOnlxdHVrc3ZhdG1tZ25nZDVua2t3NzVobiIsImlhdCI6MTY2Njk5NjQxNX0.j2wcF1g9NxT_1AvYRiplNf_jtK6S81y3L38AkcBwOqY",
- "name": "voltaire.test"
- }
-
- export ATP_AUTH_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJkaWQ6cGxjOnlxdHVrc3ZhdG1tZ25nZDVua2t3NzVobiIsImlhdCI6MTY2Njk5NjQxNX0.j2wcF1g9NxT_1AvYRiplNf_jtK6S81y3L38AkcBwOqY
-
-You could save the `ATP_HOST` and `ATP_AUTH_TOKEN` values in `~/.bashrc` so you
-don't need to enter them every time.
-
-Now you can start posting and poking around:
-
- adenosine bsky post "gruel again for breakfast"
- {
- "cid": "bafyreig2aqlsg4arslck64wbo2hnhe6k2a4z3z2sjfzh3uapv3a4zjld7e",
- "uri": "at://did:plc:yqtuksvatmmgngd5nkkw75hn/app.bsky.post/3jg5zkr322c2a"
- }
-
-
- adenosine ls at://voltaire.test
- app.bsky.post
-
-There is a [manpage](./extra/adenosine.1.md) and [CLI-specific
-README](./adenosine-cli/README.md) with more details and examples.
-
-
-## Development
-
-Mininum Supported Rust Version (MSRV) is currently 1.61, using 2021 Rust
+Minimum Supported Rust Version (MSRV) is currently 1.61, using 2021 Rust
Edition.
Contributions, conversations, bug reports, and handwriten postcards are all
-welcome. As mentioned above this is a low-effort hobby project so high-touch
-support, feature requests, growth strategies, etc, probably will not be
-fielded.
+welcome. This is a low-effort hobby project so high-touch support, feature
+requests, growth strategies, etc, probably will not be fielded.
The source code license is AGPLv3. Please acknowledge this in any initial
contributions, and also indicate whether and how you would like to be