diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2022-10-28 16:24:24 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2022-10-28 16:24:24 -0700 |
commit | 8ce259591542af0ba1c17c5435cc8844a9fbed7f (patch) | |
tree | c25343a98df2d10058d4016d02266ca6e79e0a3b | |
parent | c7ac6c415565a09b2250218ccc53f17bdb01b256 (diff) | |
download | adenosine-8ce259591542af0ba1c17c5435cc8844a9fbed7f.tar.gz adenosine-8ce259591542af0ba1c17c5435cc8844a9fbed7f.zip |
plan.txt and TODO file cleanup
-rw-r--r-- | TODO | 22 | ||||
-rw-r--r-- | adenosine-cli/TODO | 1 | ||||
-rw-r--r-- | adenosine-pds/plan.txt | 21 | ||||
-rw-r--r-- | adenosine-tauri-gui/plan.txt | 14 |
4 files changed, 57 insertions, 1 deletions
@@ -0,0 +1,22 @@ + +CLI polish: +- register and login commands should do more than just dump JSON + => return shell 'export' command (for easier config) +- log (info level) all XRPC requests and responses. especially non-200 response bodies +- status should show more stuff, like DID from JWT token + => and color! +- AtUri: at://jekyll.test/app.bsky.post/ (trailing slash should be allowed) +- include createdAt field, eg: "2022-10-28T06:10:12.106Z" +- 'get' could allow cid values (maybe with a prefix?) +- --help should mention env variables +- update top-level README + => badges: AGPL, CI + +later: +- mention IPFS exploration of export CAR files +- invite codes in account registration +- try musl/rustls builds, especially for CLI +- debian repo + https://www.aptly.info/doc/aptly/publish/ + or 'reprepro' + gitlab hosting not ready/working diff --git a/adenosine-cli/TODO b/adenosine-cli/TODO deleted file mode 100644 index 4d582e8..0000000 --- a/adenosine-cli/TODO +++ /dev/null @@ -1 +0,0 @@ -- invite codes in account registration diff --git a/adenosine-pds/plan.txt b/adenosine-pds/plan.txt new file mode 100644 index 0000000..1b55bb7 --- /dev/null +++ b/adenosine-pds/plan.txt @@ -0,0 +1,21 @@ + +PDS proof of concept: +- ipld sqlite driver importing CAR file +- MST code to read and mutate state +- sqlite schema +- JSON schema type generation (separate crate?) +- write wrapper which updates MST *and* updates other tables in a transaction +- did:web thingie? +- HTTP API handler implementing most endpoints + +libraries: +- `jsonschema` to validate requests and records (rich validation) +- `schemafy` to codegen serde types for records (ahead of time?) +- `rusqlite` with "bundled" sqlite for datastore +- `ipfs-sqlite-block-store` and `libipld` to parse and persist repo content +- `warp` as async HTTP service +- `r2d2` to wrap rusqlite (?) +- pretty_env_logger +- ??? for CBOR (de)serialization of MST, separate from the IPLD stuff? +- no good crate for working with CAR files... could rip out this code? + https://github.com/n0-computer/iroh/tree/main/iroh-car diff --git a/adenosine-tauri-gui/plan.txt b/adenosine-tauri-gui/plan.txt new file mode 100644 index 0000000..cad37fc --- /dev/null +++ b/adenosine-tauri-gui/plan.txt @@ -0,0 +1,14 @@ +tauri GUI proof of concept: +- build on CLI utils? +- store config as TOML (serlialized) in some XDG location +- views: + => initial config (register/login) + => home (feed) + => notifications + => settings (profile, auth) + => author view (profile, feed, followers, following) + => create post +- buttons/actions: + => like + => follow +- could try htmx with only 'get' requests to pass args? |