+1
-1
.github/workflows/checks.yml
+1
-1
.github/workflows/checks.yml
···-run: cargo fmt --package links --package constellation --package ufos --package spacedust --package who-am-i --package slingshot -- --check+run: cargo fmt --package links --package constellation --package ufos --package spacedust --package who-am-i --package slingshot --package pocket -- --check
+277
-77
Cargo.lock
+277
-77
Cargo.lock
·····································································+source = "git+https://github.com/fatfingers23/jwt-compact.git#aed088b8ff5ad44ef2785c453f6a4b7916728b1c"···································································································
+2
Cargo.toml
+2
Cargo.toml
+8
-1
Makefile
+8
-1
Makefile
···-cargo fmt --package links --package constellation --package ufos --package spacedust --package who-am-i --package slingshot
+19
pocket/Cargo.toml
+19
pocket/Cargo.toml
···+jwt-compact = { git = "https://github.com/fatfingers23/jwt-compact.git", features = ["es256k"] }
+17
pocket/api-description.md
+17
pocket/api-description.md
···+This API leverages atproto service proxying to offer a bit of per-user per-app non-public data storage.+Perfect for things like application preferences that might be better left out of the public PDS data.+The intent is to use oauth scopes to isolate storage on a per-application basis, and to allow easy data migration from a community hosted instance to your own if you end up needing that.+> Pocket is currently in a **v0, pre-release state**. There is one production instance and you can use it! Expect short downtimes for restarts as development progresses and occaisional data loss until it's stable.+ATProto might end up adding a similar feature to [PDSs](https://atproto.com/guides/glossary#pds-personal-data-server). If/when that happens, you should use it instead of this!
+5
pocket/src/lib.rs
+5
pocket/src/lib.rs
+8
pocket/src/main.rs
+8
pocket/src/main.rs
+202
pocket/src/server.rs
+202
pocket/src/server.rs
···
+133
pocket/src/token.rs
+133
pocket/src/token.rs
···+// danger! unfortunately we need to decode the DID from the jwt body before we have a public key to verify the jwt with
+67
pocket/static/index.html
+67
pocket/static/index.html
···+<meta name="description" content="API Documentation for Pocket, a simple user-preference storage system for atproto" />
+12
reflector/Cargo.toml
+12
reflector/Cargo.toml
···
+9
reflector/readme.md
+9
reflector/readme.md
···+receiving requests from multiple subdomains is left as a problem for the reverse proxy to solve, since acme wildcard certificates (ie. letsencrypt) require the most complicated and involved challenge type (DNS).+caddy [has good support for](https://caddyserver.com/docs/caddyfile/patterns#wildcard-certificates) configuring the wildcard DNS challenge with various DNS providers, and also supports [on-demand](https://caddyserver.com/docs/automatic-https#using-on-demand-tls) provisioning via the simpler methods.+if you only need a small fixed number of subdomains, you can also use certbot or otherwise individually configure them in your reverse proxy.
+83
reflector/src/main.rs
+83
reflector/src/main.rs
···