docs: keep architecture diagram in README
This commit is contained in:
49
README.md
49
README.md
@@ -8,13 +8,60 @@ For years I was *the child in the room* — agreeing with everyone, able to coun
|
||||
|
||||
We all keep notes; far fewer publish them — because going public usually means renting your voice from a platform that owns your content, your identity, and your audience. I'll tell the story of turning a five‑year, 800‑note habit into a public blog I own, on the AT Protocol. The thesis is a hierarchy: **`File > Protocol > App`**. Your files outlive apps (Steph Ango); a protocol turns them into a *social filesystem* (Dan Abramov); the app is just a lens.
|
||||
|
||||
## Architecture
|
||||
|
||||
One source of truth (your files), one network you own (the protocol), many lenses to read it (the apps).
|
||||
|
||||
```text
|
||||
FILE ───▶ PROTOCOL ───▶ APP
|
||||
(own it) (share it) (read it — many lenses, one source)
|
||||
|
||||
|
||||
┌──────────────────────────────┐
|
||||
│ FILE — your notes │
|
||||
│ Markdown in a Git repo │
|
||||
│ Zettelkasten: notes + links │
|
||||
│ note.md │
|
||||
│ note.pub.md ◀── publish │
|
||||
└───────────────┬──────────────┘
|
||||
│ git push
|
||||
▼
|
||||
┌──────────────────────────────┐
|
||||
│ remanso-cli (fork: Sequoia) │
|
||||
│ local CLI or GitHub Action │
|
||||
│ change-detect · img → blobs │
|
||||
│ writes atUri back │
|
||||
└───────────────┬──────────────┘
|
||||
│ com.atproto.repo.createRecord
|
||||
▼
|
||||
┌──────────────────────────────────────────────────┐
|
||||
│ PROTOCOL — your PDS (records you own) │
|
||||
│ identity: did:plc:… + handle (plc.directory) │
|
||||
│ addressed by DID + rkey: │
|
||||
│ site.standard.document shared → reach │
|
||||
│ space.remanso.note custom → rich │
|
||||
└────────────┬─────────────────────────────────┬───┘
|
||||
│ firehose / Jetstream │ listRecords (read)
|
||||
▼ ▼
|
||||
┌─────────────────────────┐ ┌────────────────────────────────┐
|
||||
│ remanso-jetstream │ │ APP — many lenses, one source │
|
||||
│ AppView (self-hosted) │ │ Remanso (remanso.space) │
|
||||
│ Jetstream→SQLite→REST │──▶│ + Bluesky graph (getFollows)│
|
||||
└─────────────────────────┘ │ apoena.dev (static site) │
|
||||
│ Leaflet / any standard.site │
|
||||
reuse the Bluesky graph ───▶│ Bluesky & other atproto apps │
|
||||
app.bsky.graph.getFollows └────────────────────────────────┘
|
||||
|
||||
Self-hosted on Coolify (platform.apoena.dev) + Gitea (git.apoena.dev).
|
||||
GitHub = push mirror.
|
||||
```
|
||||
|
||||
## Proposal
|
||||
|
||||
| Document | What's in it |
|
||||
| --- | --- |
|
||||
| [Abstract & titles](docs/abstract.md) | Title options and the long (detailed) abstract |
|
||||
| [Outline & format](docs/outline.md) | Timed talk outline, lightning variant, A/V & logistics |
|
||||
| [Architecture](docs/architecture.md) | The `File > Protocol > App` system diagram |
|
||||
| [Themes & influences](docs/influences.md) | The ideas and people credited on stage |
|
||||
| [Audience & takeaways](docs/audience.md) | Why now, who it's for, what they leave with |
|
||||
| [Submission kit](docs/submission.md) | Speaker bio, supporting material, tailoring checklist |
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
# Architecture at a glance — `File > Protocol > App`
|
||||
|
||||
One source of truth (your files), one network you own (the protocol), many lenses to read it (the apps).
|
||||
|
||||
```text
|
||||
FILE ───▶ PROTOCOL ───▶ APP
|
||||
(own it) (share it) (read it — many lenses, one source)
|
||||
|
||||
|
||||
┌──────────────────────────────┐
|
||||
│ FILE — your notes │
|
||||
│ Markdown in a Git repo │
|
||||
│ Zettelkasten: notes + links │
|
||||
│ note.md │
|
||||
│ note.pub.md ◀── publish │
|
||||
└───────────────┬──────────────┘
|
||||
│ git push
|
||||
▼
|
||||
┌──────────────────────────────┐
|
||||
│ remanso-cli (fork: Sequoia) │
|
||||
│ local CLI or GitHub Action │
|
||||
│ change-detect · img → blobs │
|
||||
│ writes atUri back │
|
||||
└───────────────┬──────────────┘
|
||||
│ com.atproto.repo.createRecord
|
||||
▼
|
||||
┌──────────────────────────────────────────────────┐
|
||||
│ PROTOCOL — your PDS (records you own) │
|
||||
│ identity: did:plc:… + handle (plc.directory) │
|
||||
│ addressed by DID + rkey: │
|
||||
│ site.standard.document shared → reach │
|
||||
│ space.remanso.note custom → rich │
|
||||
└────────────┬─────────────────────────────────┬───┘
|
||||
│ firehose / Jetstream │ listRecords (read)
|
||||
▼ ▼
|
||||
┌─────────────────────────┐ ┌────────────────────────────────┐
|
||||
│ remanso-jetstream │ │ APP — many lenses, one source │
|
||||
│ AppView (self-hosted) │ │ Remanso (remanso.space) │
|
||||
│ Jetstream→SQLite→REST │──▶│ + Bluesky graph (getFollows)│
|
||||
└─────────────────────────┘ │ apoena.dev (static site) │
|
||||
│ Leaflet / any standard.site │
|
||||
reuse the Bluesky graph ───▶│ Bluesky & other atproto apps │
|
||||
app.bsky.graph.getFollows └────────────────────────────────┘
|
||||
|
||||
Self-hosted on Coolify (platform.apoena.dev) + Gitea (git.apoena.dev).
|
||||
GitHub = push mirror.
|
||||
```
|
||||
|
||||
> The whole stack is self-hosted: **Coolify** (`platform.apoena.dev`) runs the AppView and apps, **Gitea** (`git.apoena.dev`) hosts the code, with **GitHub** as a push mirror.
|
||||
Reference in New Issue
Block a user