World / Experimental tech
Type a sentence. Get a city.
FictionAn invented product, made to show how I think. Not a real company or release.
- Category
- Experimental tech
- Status
- Concept, invented
- Engine
- Same engine, different data
Skyline.txt
The data file
Your sentence, measured: every tower, plaza and street below comes from this object. Type, and watch it change. Like the world, it’s invented, and it says so.
{
"source": "invented",
"world": "skyline.txt",
"text": "Type a sentence. Get a city. Every word is a tower, every space a street.",
"seed": 3084267459,
"rules": { "height": "0.5 + 0.36 per letter", "footprint": "1x1 up to 3 letters, 2x1 up to 6, 2x2 from 7", "space": "a street, 1 cell", "punctuation": "a plaza, 1 cell", "capital": "a mast on the roof" },
"towers": [
{ "word": "Type", "letters": 4, "at": [0, 1], "size": [2, 1, 1.94], "mast": true },
{ "word": "a", "letters": 1, "at": [3, 1], "size": [1, 1, 0.86] },
{ "word": "sentence", "letters": 8, "at": [5, 0], "size": [2, 2, 3.38], "crown": true },
{ "word": "Get", "letters": 3, "at": [9, 0], "size": [1, 1, 1.58], "mast": true },
{ "word": "a", "letters": 1, "at": [11, 0], "size": [1, 1, 0.86] },
{ "word": "city", "letters": 4, "at": [13, 0], "size": [2, 1, 1.94] },
… 9 more
],
"plazas": [
{ "mark": ".", "at": [7, 0] },
{ "mark": ".", "at": [15, 0] },
{ "mark": ",", "at": [12, 3] },
{ "mark": ".", "at": [7, 6] }
],
"unbuilt": 0
}
The toy
A toy that turns a sentence into a city. Each word becomes a tower, as tall as its letter count. Spaces become streets and punctuation becomes plazas. The city rebuilds as you type.
Who it’s for
It’s for people who like to play with words. A sentence already has a shape: long words, short words, pauses. Here that shape stands up, and you can change it one key at a time.
How it lays out
The layout is the same job as setting type: fill a line, then wrap to the next. Only the towers that changed may drop again, so every new city is compared with the last one. The lit windows are one small rule, shared by the shader and the SVG fallback.