Places: /shape/<key>, voices, address newsletter
The landing gesture leads to /shape/{curve.key} - the place page:
what was left there (the relay's /place, playable), leave your voice
(type: voice at value "{key}"), hear from exactly this address
(redoal_watchers, exact key), and the cards. Email leaves the landing
page. A card for iroh through varde. Desks for voices and watchers.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
605eb549f8
commit
66c31786ce
@@ -14,3 +14,10 @@ aggregates:
|
||||
unsubscribed: { event: unsubscribed }
|
||||
transitions:
|
||||
open: [unsubscribed]
|
||||
- bucket: redoal_watchers
|
||||
initial: open
|
||||
states:
|
||||
open: { event: subscribed }
|
||||
unsubscribed: { event: unsubscribed }
|
||||
transitions:
|
||||
open: [unsubscribed]
|
||||
|
||||
+13
-10
@@ -13,12 +13,10 @@ alternatives:
|
||||
description: >
|
||||
By associating similar movements while facilitating discourse we
|
||||
discover signal within chaos. Draw a path — the network answers
|
||||
with the shapes it heard nearby.
|
||||
action: /shape
|
||||
# Announced, not yet open: the network answers with echoes today,
|
||||
# what follows a shape is still being built.
|
||||
disabled: true
|
||||
consequence: [Find what follows]
|
||||
with the shape it heard, and with the places kept nearby. Pick
|
||||
one of those and it becomes your address.
|
||||
action: /shape/{curve.key}
|
||||
consequence: [Go to the place]
|
||||
record_as: redoal_gestures
|
||||
encouragements:
|
||||
- What you don't know — your collaborators will.
|
||||
@@ -36,10 +34,6 @@ alternatives:
|
||||
type: gesture
|
||||
relay: wss://relay.redoal.com
|
||||
optional: true
|
||||
- name: email
|
||||
label: Email, if the echoes should reach you later
|
||||
type: email
|
||||
optional: true
|
||||
|
||||
- name: Meet a network you carry in your hand
|
||||
description: >
|
||||
@@ -83,6 +77,15 @@ alternatives:
|
||||
script arrives on the same terms as everyone else — that is
|
||||
the whole entry requirement.
|
||||
icon: lucide:hand
|
||||
- name: Carried by iroh, through varde
|
||||
description: >
|
||||
What is left at a place is kept and mirrored by
|
||||
[varde](https://prosjekt.klingenbergbygg.no/bl/varde), a small
|
||||
daemon that moves bytes between consenting machines over
|
||||
[iroh](https://iroh.computer) — verified, rate-limited, and
|
||||
legible to the network it runs on. Recordings travel that way,
|
||||
with no company carrying them.
|
||||
icon: lucide:waypoints
|
||||
- name: Young, and honest about it
|
||||
description: >
|
||||
A prototype and an artwork before it is a product. The
|
||||
|
||||
@@ -38,6 +38,39 @@ alternatives:
|
||||
- to: unsubscribed
|
||||
label: Unsubscribe
|
||||
|
||||
- name: Voices
|
||||
description: >
|
||||
Recordings left through the web, one answer per upload: the
|
||||
address, the digest, the length. The audio itself lives in the
|
||||
relay's node and in varde.
|
||||
features:
|
||||
- name: ""
|
||||
description: ""
|
||||
resource:
|
||||
source:
|
||||
kind: kv
|
||||
bucket: redoal_voices
|
||||
requires_group: owners
|
||||
|
||||
- name: Watchers
|
||||
description: >
|
||||
Who asked to hear from one exact address. Unsubscribing is
|
||||
theirs (the link in their receipt); the desk can retire an
|
||||
address that bounces.
|
||||
action: /review
|
||||
consequence: [Confirm]
|
||||
features:
|
||||
- name: ""
|
||||
description: ""
|
||||
resource:
|
||||
source:
|
||||
kind: kv
|
||||
bucket: redoal_watchers
|
||||
requires_group: owners
|
||||
transitions:
|
||||
- to: unsubscribed
|
||||
label: Unsubscribe
|
||||
|
||||
- name: Announced pages
|
||||
description: >
|
||||
Pages with an `event:` window, kept here by portal itself. When a
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
id: /shape
|
||||
route: ^/shape
|
||||
followup: true
|
||||
name: Where does the path lead?
|
||||
description: >
|
||||
Your shape is in the room now. Echoes of it reach whoever draws
|
||||
nearby — and theirs reach you, whenever you come back to draw again.
|
||||
alternatives:
|
||||
- name: What just happened
|
||||
description: ""
|
||||
features:
|
||||
- name: An address, not an upload
|
||||
description: >
|
||||
The stroke became a 20-byte gesture key — a compressed
|
||||
encoding of its shape. Similar shapes land on nearby keys;
|
||||
that proximity is the whole network.
|
||||
- name: Nothing to undo
|
||||
description: >
|
||||
A drawn path is a fact, not an account. There is no profile
|
||||
behind it unless you left an email.
|
||||
- name: What arrives here next
|
||||
description: >
|
||||
In the full network a drawing is a place that holds voices —
|
||||
recordings left by whoever came before, and live talk with
|
||||
whoever is standing here now. On this site it holds echoes
|
||||
today; the voices follow.
|
||||
|
||||
- name: Draw another
|
||||
description: >
|
||||
The network gets more interesting with every shape it hears.
|
||||
action: /
|
||||
consequence: [Back to the canvas]
|
||||
@@ -0,0 +1,94 @@
|
||||
# The place a drawn (or picked) path leads to: /shape/<gesture key>.
|
||||
# Reached through the landing alternative's templated action
|
||||
# (/shape/{curve.key}); the key is the URL. What is kept here comes
|
||||
# from the relay - the first redoal node - over its /place endpoint,
|
||||
# and a voice left here goes back the same way (ADR-0015 in redoal).
|
||||
name: Where does the path lead?
|
||||
description: >
|
||||
This is a place: the 20-byte address your path became — or the one
|
||||
you picked from what the network keeps nearby. Voices left here play
|
||||
here, for whoever draws their way to this shape.
|
||||
alternatives:
|
||||
- name: Listen to what was left here
|
||||
description: ""
|
||||
features:
|
||||
- name: ""
|
||||
description: ""
|
||||
icon: lucide:ear
|
||||
resource:
|
||||
source:
|
||||
kind: url
|
||||
url: "https://relay.redoal.com/place/{key}"
|
||||
public: true
|
||||
empty: Nothing has been left at this address yet — yours could be the first voice here.
|
||||
jq: >
|
||||
.recordings[] | {name: ((.duration_ms / 1000 | round | tostring) + " seconds of voice"),
|
||||
description: ("sealed by " + .author[0:8] + "…"),
|
||||
audio: ("https://relay.redoal.com" + .audio)}
|
||||
|
||||
- name: Leave your voice here
|
||||
description: >
|
||||
Recorded in your browser, kept at exactly this address by the
|
||||
relay — the first node of the network — and mirrored on from
|
||||
there. The relay seals it with its own key on your behalf; a key
|
||||
of your own comes with the app.
|
||||
action: /shape/{voice.key}
|
||||
consequence: [Keep it here]
|
||||
record_as: redoal_voices
|
||||
encouragements:
|
||||
- It stays where you left it.
|
||||
features:
|
||||
- name: ""
|
||||
description: Up to a minute. Say it once; it is sealed as it is.
|
||||
icon: lucide:mic
|
||||
requirements:
|
||||
- name: voice
|
||||
label: Voice
|
||||
type: voice
|
||||
relay: wss://relay.redoal.com
|
||||
value: "{key}"
|
||||
optional: true
|
||||
|
||||
- name: Hear from this address
|
||||
description: >
|
||||
The fallback for a phone without the app: one note when
|
||||
something is left at exactly this shape — and nothing about
|
||||
anywhere else.
|
||||
action: /subscribed
|
||||
consequence: [Watch this address]
|
||||
record_as: redoal_watchers
|
||||
encouragements:
|
||||
- Your shape now has a listener.
|
||||
features:
|
||||
- name: Where the note goes
|
||||
description: >
|
||||
The note is about one exact address, so it needs one exact
|
||||
place to land.
|
||||
icon: lucide:mail
|
||||
requirements:
|
||||
- name: email
|
||||
label: Email
|
||||
type: email
|
||||
- name: key
|
||||
label: Address
|
||||
type: hidden
|
||||
value: "{key}"
|
||||
|
||||
- name: What just happened
|
||||
description: ""
|
||||
features:
|
||||
- name: An address, not an upload
|
||||
description: >
|
||||
The stroke became a 20-byte gesture key — an ordered chain of
|
||||
headings, drawn back for you under the stroke. Similar shapes
|
||||
land on nearby keys; picking a kept place makes its key yours.
|
||||
- name: Nothing to undo
|
||||
description: >
|
||||
A drawn path is a fact, not an account. There is no profile
|
||||
behind it unless you asked to hear from an address.
|
||||
|
||||
- name: Draw another
|
||||
description: >
|
||||
The network gets more interesting with every shape it hears.
|
||||
action: /
|
||||
consequence: [Back to the canvas]
|
||||
@@ -21,3 +21,12 @@ alternatives:
|
||||
bucket: redoal_subscribers
|
||||
to: unsubscribed
|
||||
label: Unsubscribe me
|
||||
|
||||
- name: Stop watching an address
|
||||
description: >
|
||||
Using the link from a note about a shape? Confirm below and that
|
||||
address goes quiet for you.
|
||||
self_transition:
|
||||
bucket: redoal_watchers
|
||||
to: unsubscribed
|
||||
label: Stop watching
|
||||
|
||||
Reference in New Issue
Block a user