cruma
🌙 ☀️

Welcome

The Promenade

A little corner of the web where the page itself is the playground. Every letter you see is solid ground — walk across it, jump between headings, and fire up the jetpack to reach the skyline.

Where to next

Use the tabs up top to wander around. Each page is its own stretch of promenade, and moving between them glides with a gentle page transition.

Most of the web is read once and forgotten. A page can be a place you come back to.

Field notes

A Stroll Down the Promenade

Every word on this page is solid ground. Use the arrow keys to walk left and right, tap W to hop, and hold J to fire up the jetpack. Go on — climb onto a heading and look around.

The page is a playground

Most of the web is read once and forgotten. But a page is also a landscape: a skyline of headings, long flat paragraphs to pace across, and little gaps between the words where a careless walker can slip right through. The promenade widget takes that idea literally. It measures the real ink of every letter and turns it into a platform you can stand on.

Try walking off the end of this sentence and see where you land. The taller letters — the l's, t's, and h's — make natural steps, while the round little vowels sit a touch lower. Walk slowly and the whole line becomes a gently rolling path beneath your feet.

"We build our buildings, and afterwards our buildings build us." The same is true of paragraphs, apparently.

Things you can do here

There is no goal and no score. That is rather the point. Still, if you like a little structure, here are a few ways to spend your visit:

A note on jumping

A plain jump is enough to clear most lines of body text and land neatly on the one above. The jetpack is for the ambitious: hold it down to rise toward a distant heading, but keep an eye on the little gauge above your head, since it only refills while your feet are planted on something solid.

A note on falling

Falling is encouraged. Step off the edge of a word and gravity does the rest, dropping you to the next surface below — another line, a heading, or the promenade floor that runs along the very bottom of the page. Nothing here can hurt you, so leap first and read the paragraph afterwards.


Quick reference

The whole control scheme fits in a few rows — and yes, you can stand on the table while you read it:

KeyWhat it does
A / DWalk left and right
WJump straight up
JFire the jetpack — hold to keep flying
SClimb down through a div/pre border

How it works, briefly

Under the hood, each visitor lives in document space and shares only a tiny, layout-independent description of where they are: which glyph they are standing on, how far across it, and how high they have jumped. Everyone else rebuilds that position against their own copy of the page, so the figures line up whether you are on a phone, a laptop, or a wall-sized display.

That is why a friend on a narrow screen and you on a wide one can still walk the same street together. The letters may wrap differently, but the meaning of a position — "third character of this heading" — is the same everywhere. Read more in the project's README.

  1. The page text is scanned and every character becomes a platform.
  2. Your figure walks, jumps, and falls against those platforms.
  3. Your position is sent as a glyph anchor, not raw pixels.
  4. Everyone resolves that anchor against their own layout.

Embedding the whole thing on any page is a single line:

<script src="promenade.js" defer></script>

A first step

Hello, World!

The oldest greeting in programming — now with somewhere to stand. Climb up onto the H, walk the length of the line, and take a leap off the exclamation mark.

Why “Hello, World”?

It is the traditional first program in any language: the smallest thing you can write that proves the whole system is working. Here it doubles as the smallest possible promenade — a single sentence you can actually explore on foot.

The classic, in a few familiar languages:

print("Hello, World!")          # Python
console.log("Hello, World!");   // JavaScript
puts "Hello, World!"            # Ruby
println!("Hello, World!");      // Rust
Every big journey starts with a small, slightly nervous “hello.”

Error 404

You’ve wandered off the promenade

There’s no page at that address — the path just runs out into open air. Let’s get you back onto solid ground.

Back home