nsite-clay demo

Everyone has the key to this page.

It is printed a few lines down, in the open, on purpose. Sign in with it and this document becomes editable in front of you. Press Save and the new HTML goes to a Blossom server, the Nostr event pointing at it is republished, and that is the file the next person loads.

Nothing here is private and nothing here lasts. A cron job puts the original file back about once a week.

Learn more about us.

  1. Copy the key.
  2. Press Sign in, in the bar at the bottom right, and paste it there.
  3. Type into anything. Small grey buttons appear on the things you can restructure, and only you can see them.

You are in. Everything on this page is yours to change, including the parts somebody else wrote. Press Save when you want the rest of the world to have it.

Look Or
01

The board

Columns are section elements, cards are article elements, and moving a card to the next column moves the element. Whatever you typed into it comes along, because it is the same node arriving somewhere else. There is no store behind this and nothing to keep in sync with it.

Only you can see these buttons. They are not drawn by a script either. They are markup in the file, and one rule in the stylesheet keeps them away from everybody else. The arrows walk a card between columns, and up and down inside one. Copy duplicates a card, Tag cycles its label, Delete asks first.

7 cards · 3 idea · 3 fact · 1 dare

Open

3 cards

idea

note 🥺


Say what it is.

dare

Wreck the layout

Delete a column. Add four and name them after people who owe you money. None of it is load bearing, and the weekly reset puts it back whether you liked the result or not.

idea

Leave something for the next person

Most of what you are reading was typed by a stranger who is not coming back. Add to it, or argue with it in a card of your own.

Someone is on it

2 cards

fact

The card is the record

Open your browser's element inspector and drag this node into another column. The page cannot tell that apart from the arrow button, because the arrow button does the same thing.

fact

Nothing was fetched to draw this

The board came out of the HTML. No request goes out to fill it in, which is why it still reads with JavaScript switched off and why a crawler sees the words.

Done, or dropped

2 cards

fact

Save is the deploy

One press uploads this whole file to a Blossom server and republishes a single replaceable Nostr event naming its hash. Gateways that serve nsites pick it up in seconds.

idea

History is the undo button

Every save this key ever made is listed under History in the bar, and each one can be read back from Blossom. Restoring an old version files a new one, so trying it costs nothing.

The filter box above is marked nc:no-persist. Its value stays in your browser, because a half-typed search has no business being published, and the class it hangs on the hidden cards comes off again on the way out.

02

Ticks that outlive you

A ticked box is written into the file as checked before it is uploaded, so the next visitor finds it ticked. Tick one, save, and come back tomorrow to find out whether somebody unticked it out of spite.

Readers can tick these too. Nothing they tick reaches anyone else, because the file has exactly one signer and a signature is not something you can borrow.

  • Signed in with the key at the top of the page
  • Moved a card into a different column and watched the text travel with it
  • Renamed a column
  • Put a picture in that was not here before
  • Wrote a Nostr post from the Write button
  • Left the page worse than I found it
03

The part with no shape

A theme has no paragraph to live in and no element to hang off, so it lives in a JSON block near the bottom of this file, and nc.state reads and writes it. The chips in the hero write to that block. So do these.

It is real state, saved and published like the rest of the document, which is why a stranger arriving tomorrow gets the colours somebody chose today rather than the colours their laptop prefers.

Density

Signed out, that block still shows what the page is running on, because it was published with the file.

{
  "theme": "clay",
  "density": "roomy"
}
04

A picture and a video

Both files sit on the same Blossom servers that hold this page, and the markup holds their URLs and nothing else. Put the caret in any paragraph and the floating toolbar grows an image button and a video button. A file you drop there is uploaded and addressed by its own hash, so the URL can never point at something else later. A YouTube or Vimeo link becomes a thumbnail that loads the player only once a reader clicks it.

A dark page in edit mode. The heading reads 'A self-editable nsite' with part of it selected, a small formatting toolbar floats above it, and a bar in the corner says owner and Save.
nsite-clay editing itself, which is how this page was written.
A phone recording of a Lightning app, sitting on Blossom next to this page. Replace it with something better; you have the key.
05

Posts, which do not live here

Everything above is markup in this file. The list below is not. It is a query to a few relays, run when the page loads, and the results are marked so that a save can never freeze them in. Save the page, read the published bytes, and there are no articles in them.

The Write button in the bar composes a long-form Nostr post, signs it with the key you signed in with and publishes it. It can also bake a rendered copy into this page, which lands in the space below. The post then exists twice: as an event any Nostr client can show, and as plain HTML for a reader with no JavaScript.

06

What you are walking into

  • The key is public

    Everyone reading this can rewrite it, including the parts you wrote. Two people editing at once will lose one side's work, and neither of them will be told.

  • Whatever you type is published

    It goes to Blossom servers and to relays under that public key, where anyone can read it and nobody can be made to delete it.

  • It resets weekly

    A cron job puts the file back the way it started, so anything left here has days rather than months. Every version in between stays in the history, so a good one can be dug out again.

  • Use your own key somewhere else

    Never paste a key you care about into a page somebody else published, this one included. The key above is a throwaway, which is exactly why it can be printed in the open.

owner · npub16kwfcua…