Rakentajan muistiinpanot

Notes from building FleaWinder Living Circus: a tiny world of performers, places, and the odd things they remember.

The Circus Found Its Poster

For a while, the website was still presenting FleaWinder like the old desktop strip: a row of acts above a taskbar, powered by everyday input. That is true history, and I am fond of it. But it is no longer the clearest picture of what the project is becoming.

The current build begins with a small illustrated place: a ring, workshops, paths, quiet corners, and room for another flea. That shift sounds cosmetic, but it changes the promise. The founding eight are not a fixed product catalogue. They are the people who welcome you into a world that can make room for someone new.

I brought the actual iPhone and Apple TV art onto the site rather than inventing a separate marketing look. The living grounds map and the habitats are game art. They show the version of FleaWinder I want to keep building: tactile, a little secret, warm at the edges, and large enough for a small history without pretending to be an empire.

This also clarified the release story. The next public chapter is the Apple circus on iPhone, iPad, and Apple TV. Windows Classic and macOS remain free little archives of where the show started while the next desktop edition takes its time. The website should make that future visible at a glance.

A Flea Needs a Room

Creating a flea was never meant to stop at choosing an act, a color, and a hat. A character becomes easier to care about when they have somewhere to go after the applause. That is why the habitat work became a real system instead of a single decorative screen.

Habitats now keep their own state and daily rhythm. A flea can settle into a corner, collect the small objects that make it feel used, and carry that sense of place back into the larger circus. The important design question was not which furniture could be unlocked. It was what makes a place feel like it belongs to someone.

The next step connected those rooms to the world itself. A habitat is not a menu tab in costume: it can point outward to a destination, a route, a visitor, or a reason to return. That gives a created flea a life adjacent to the stage rather than treating it as a replacement skin for one of the founders.

The art helped set the tone. Blanket forts, mossy folds, paper ledges, lamps, thread, cups of tea: each is deliberately flea-sized. The circus should feel like a place you lean toward, not a dashboard you manage.

A Map Is Not a Menu

The Living Route began with a refusal: I did not want to add a World tab that was only another list of systems. If the circus was going to have places, those places needed to suggest distance, weather, routine, and the possibility that something had happened there before you opened the screen.

So the world became a route. The ring, workshop, archive, commons, and quiet corners sit in relation to one another. A player can follow an open question, visit a familiar place, or discover that a route has become meaningful because the same people keep passing through it.

That relationship is why the map matters more than a set of destination buttons. A path can acquire a story. A place can become known for a particular rehearsal, a borrowed prop, a late-night conversation, or a recurring bit of weather. The world starts to feel particular without demanding a quest log.

It is also a useful boundary for the whole project. FleaWinder should offer threads, not chores. A route is an invitation to notice what changed, not an obligation to clear every marker before bedtime.

What the Daily Flea Is For

A living circus needs a way to remember public life without turning every private moment into content. That was the reason for the Daily Flea: not a feed, not a notification machine, but a tiny newsroom with reporters, sources, corrections, letters, archives, and enough editorial judgment to leave some things alone.

The newsroom work gave the paper a rhythm. A public consequence can earn a follow-up. A reporter can have a beat and a method. A correction can matter. Repeated events can become the sort of local story that gets retold differently by different people. Those details are small, but they let the circus develop a public memory instead of a pile of disconnected headlines.

At the same time, the performers gained a different kind of history: legacy. A flea can teach, retire, leave behind a technique, or remain important after it no longer holds the center of the ring. That is the opposite of collection-game logic. The point is not to maximize a roster; it is to make influence visible after a moment has passed.

The rule I keep returning to is simple: private scenes stay private unless someone inside the world makes them public. The paper is there to witness the circus, not to expose it.

Keeping a Spatial Circus Small

Putting a circus in a room creates an obvious temptation: make it huge. The better answer for FleaWinder was the opposite. The spatial stage works when it feels like a tiny performance has quietly arrived on a table, a shelf, or a clear patch of floor - something you approach rather than something that takes over the room.

The practical work was all about making that feeling dependable. The stage has to find surfaces, place the acts with enough room to read, respect the difference between devices, and fall back gracefully when a room cannot offer every kind of depth information. The technology is only useful if the performer still feels like the same performer.

That became the visual test: Nova should still read as Nova on a small wire, and Bugg should still be Bugg when the ramp is a few inches long. The goal is continuity of character and gesture, not a technical demo with circus wallpaper.

Spatial play is one more way to be near the troupe. It is not a separate game, a new economy, or a reason to make the player perform for the app. The circus stays flea-sized on purpose.

How the fleas learned to sound more like themselves

This month I spent time on a quieter kind of magic: helping each flea feel more like a tiny performer with a point of view. The goal was not to make the circus louder or more complicated. It was to make the moments between tricks feel warmer, more specific, and less repetitive.

The new voice work gives each flea a clearer rhythm. Pip can be proud without becoming stiff, Nova can notice details without turning into a lecture, and Bugg can keep that bright daredevil spark even when the app is simply idling on a desk.

I also tightened the way seasonal flavor shows up. A spring session should not feel exactly like an autumn one, and a late-night wind should have a slightly different mood than a midday check-in. Those shifts are small on purpose. FleaWinder works best when it feels alive without demanding attention.

The important part is consistency. The same troupe should feel familiar on iPhone, Apple TV, Mac, watch, widgets, and the spatial circus. When a flea becomes more expressive in one place, the rest of the surfaces need to catch up so the project still feels like one world.

That is the thread I keep coming back to: tiny, readable, characterful moments that travel everywhere. The fleas are still small. The circus is still gentle. But they have a little more presence now, and that makes the whole thing feel more cared for.

Kirppujen vetäminen kaikkialta iOS:ssä

FleaWinderissä on nyt oma iOS-näppäimistö. Asenna se kerran ja jokainen sovellus, jossa kirjoitat — Viestit, Muistiinpanot, Safari, missä tahansa — vetää hiljaa sirkusta taustalla. Joka kymmenes näppäinpainallus lähettää energiapurskeen takaisin pääsovellukseen. Kirput eivät välitä, mistä syöte tulee — ne haluavat vain tulla vedetyksi.

Näppäimistö itsessään on sirkusteemainen: tummat lämpimän ruskeat näppäimet, kultaiset korostukset erikoisnäppäimissä ja pieni energiapalkki ylhäällä, joka täyttyy kirjoittaessa. Se vaihtuu punaisesta kultaan ja vihreään näppäinpainallusmäärän kasvaessa. Vieressä on pieni kirppu-emoji ja reaaliaikainen laskuri, jotta näet tarkalleen, kuinka paljon vetämistä olet tehnyt tässä istunnossa.

Vaikein osa oli tietojen jakaminen. iOS-näppäimistölaajennukset toimivat omassa hiekkalaatikkoprosessissaan — ne eivät voi puhua pääsovelluksen kanssa suoraan. Ratkaisu on App Groups: jaettu UserDefaults-säiliö, jota sekä näppäimistö että sovellus voivat lukea ja kirjoittaa. Näppäimistö kerää tuulipisteitä ja pudottaa ne jaettuun säiliöön; sovellus poimii ne jatkuessaan. Siirsimme samalla olemassa olevat Siri Shortcuts -oikotiet ja widget-aikomukset samaan jaettuun säiliöön, joten nyt kaikki virtaa yhden putken läpi.

Aktivoidaksesi: Asetukset, Yleiset, Näppäimistö, Näppäimistöt, Lisää uusi näppäimistö, FleaWinder Circus. Se ei pyydä avointa pääsyä — ei verkkoa, mitään tietoja ei poistu laitteeltasi. Vain näppäinpainalluksia, jotka ruokkivat kirppuja.

Sirkus pienille näytöille

FleaWinder suunniteltiin leveäksi, ohueksi nauhaksi tehtäväpalkin yläpuolelle — mukavasti vaakasuuntaan. Puhelimet ovat pystysuunnassa. Sirkuksen saaminen toimimaan pienillä näytöillä tarkoitti asettelun uudelleen miettimistä menettämättä sitä, mikä tekee siitä eloisan.

The embeddable widget flips to a tall canvas on mobile, stacking the acts vertically instead of spreading them across a ribbon. Anyone dropping FleaWinder into their own site gets a layout that adapts automatically. Four theme presets (dark, light, warm, cool) and a scale parameter let it blend with whatever surrounds it.

Suurempi haaste oli luettavuus. Puhelimen näytöllä työpöytäkoossa piirretyt kirput ovat pelkkiä pisteitä. Lisäsimme zoomausvaiheen, joka suurentaa kirppujen kehot niin, että niiden asut, ilmeet ja asusteet ovat oikeasti näkyvissä — Pipin pääpanta, Rexin kypärä, Blazen pieni kruunu. Persoonallisuusyksityiskohdat, jotka olivat aina olleet siellä, luetaan yhtäkkiä käsivarren mitan päästä.

Loput mobiiliuudistuksesta oli vähemmän näyttävää mutta yhtä tärkeää: kosketusystävälliset osuma-alueet, parempi kirjasinkoon skaalaus, responsiiviset välit koko markkinointisivustolla. Ei mitään vallankumouksellista — vain varmistaminen, että sirkus näyttää oikealta missä tahansa sen löytääkin.

Asut, vuodenajat ja sirkustirehtööri

Tämä viikko oli pelkkää visuaalista syvyyttä. Jokainen kirppu koloniassa käyttää nyt ainutlaatuista asua — Novalla on päivänvarjo nuoralla, Rex käyttää kypärää tykissä, Blaze saa kruunun tulennielijänumeroon. Pieniä yksityiskohtia, mutta ne antavat jokaiselle esiintyjälle identiteetin, jonka tunnistaa ensi silmäyksellä.

Lavaa itsessään muuttuu kalenterin mukaan. Kausiluonteinen partikkelisysteemi pudottaa lunta talvella, kirsikankukkia keväällä, tulikärpäsiä kesällä ja ajelehtia lehtiä syksyllä. Mukana on myös hienovarainen päivä/yö-sävy sidottuna reaalimaailman kelloosi — nauha lämpenee kultaisena hetkenä ja himmenee pimeän jälkeen, kirkkaammilla tähdillä yötaivaalla.

Suurin lisäys on sirkustirehtööri — erityinen kirppu silinteri päässä, joka kävelee esitysten välillä tarkastamassa show'ta. Hän ei esiinny; hän valvoo. Hänen partioreitinsä oikein saaminen tarkoitti kävelyjen ajoittamista niin, että hän saapuu juuri esitysvaihdon päättyessä, mikä antaa koko sirkukselle koreografian tunnun, jota sillä ei ollut aiemmin.

Konepellin alla kokonainen teemajärjestelmä ohjaa nyt tätä kaikkea. Kahdeksan väripalettia sekä automaattinen kausitila, joka valitsee oikean kuukauden perusteella. Jokainen väri jokaisessa esityksessä ja käyttöliittymäelementissä tulee aktiivisesta teemasta, joten vaihto tuntuu saumattomalta eikä päälle liimatulta.

v1.1.0: Kaksi uutta esitystä

Versio 1.1.0 lisää jongleerausesityksen ja tulennielijän kokoonpanoon, nostaen live-sirkusesitysten kokonaismäärän seitsemään. Molemmat toimivat samalla energiajärjestelmällä, joka ohjaa muutakin esitystä — näppäinpainalluksesi, hiiren liikkeesi ja klikkauksesi.

Jonglööri seuraa useita palloja aidoilla parabolisilla kaarilla. Lukumäärä skaalautuu energian mukaan: kaksi tai kolme tyhjäkäynnillä, jopa kuusi täydellä teholla, selän takaa kiinniotoin kun yleisö villiintyy. Ajoituksen saaminen oikeaksi vaati jokaisen pallon vaiheen irtikytkemistä, jotta ne eivät kasaudu.

Tulennielijä käyttää olemassa olevaa partikkelisysteemiä mutta uudella lämpöväre-efektillä. Liekin pituus kasvaa energian myötä, ja klikkaukset tuottavat bonuspurkauksia. Hankalin osa oli värien sekoitus — sujuva siirtymä syvänpunaisesta pohjassa kirkkaankeltaiseen kärjessä ilman raitaista ilmettä.

Molemmat esitykset liittyvät olemassa olevaan rotaatiojärjestelmään, joten näet niiden vaihtuvan sisään ja ulos alkuperäisen viiden rinnalla. Jos haluat kiinnittää suosikkisi, Asetukset-paneeli antaa nyt kytkeä yksittäisiä esityksiä päälle ja pois.

Historiasivun tausta

FleaWinderin historiasivu dokumentoi yli neljäsataa vuotta todellisia kirppusirkuksia — Robert Hooken mikroskooppiluonnoksista vuonna 1665 nykypäivän Oktoberfest-esiintyjiin. Sen kirjoittaminen vaati viktoriaanisten plakaatien, digitoitujen sanomalehtileikkeiden ja yllättävän monen entomologista viihdettä käsittelevän akateemisen tutkimuksen lukemista.

Vaikein osa oli päättää, mitä jättää pois. Louis Bertolotto yksinään täyttäisi kirjan (ja hän kirjoittikin — useamman, itse asiassa). Kompromissi oli aikajana, joka käy läpi tärkeimmät tapahtumat, ja sarja laajennettavia osioita kenelle tahansa, joka haluaa kaivautua syvemmälle.

Sivu käyttää alkukirjaimia, koristeellisia jakajia ja antiikva-kirjasinta muistuttaen lentolehtisiä ja plakaateja, joita se kuvaa. Jokainen osio on oletuksena suljettu, jotta lukija ei hukku, mutta ensimmäinen kappale on aina näkyvissä alkukirjaimella, joka vetää sinut sisään.

Kaikki teksti on saatavilla englanniksi, espanjaksi ja saksaksi. Käännösprosessi toi esiin kiehtovaa paikallishistoriaa — esimerkiksi saksalaisilla Flohzirkus-perinteillä Oktoberfestillä on oma kehityslinjansa, joka eroaa Lontoon ja New Yorkin perinteistä.

Miksi rakensin FleaWinderin

Halusin jotain, joka saisi tietokoneen tuntumaan elävältä — ei häiritsevällä tavalla, vaan hiljaisena kumppanina, joka reagoi läsnäoloosi. Useimmat näytönsäästäjät aktivoituvat kun lähdet; FleaWinder aktivoituu kun saavut.

Idea oli yksinkertainen: ota kaikki se tyhjäkäyntisyöte, jonka käyttöjärjestelmäsi sivuuttaa — kirjoittamisesi rytmi, hiiresi nopeus, klikkauksiesi tahti — ja syötä se animoitujen sirkuskirppujen seurueelle. Mitä enemmän työskentelet, sitä enemmän esitys herää eloon.

Sen rakentaminen läpinäkyvänä kerroksena tehtäväpalkin yläpuolelle osoittautui oikeaksi rajoitteeksi. Se on aina näkyvissä mutta ei koskaan tiellä. Et ole sen kanssa suoraan vuorovaikutuksessa; työskentelet vain, ja se reagoi. Tekninen haaste oli tehdä siitä aidosti klikkauksille läpinäkyvä, jotta se ei koskaan varasta kohdistusta.

FleaWinder on rakkauskirje viktoriaaniselle kirppusirkukselle — todelliselle, vuosisatoja vanhalle taidemuodolle, jossa kellosepät valjastivat oikeita kirppuja vetämään miniatyyrivaunuja ja kävelemään nuoralla. Historiasivu kertoo sen tarinan kokonaisuudessaan.