개발 노트

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.

작은 화면으로 서커스를

FleaWinder는 작업 표시줄 위의 넓고 얇은 띠를 위해 설계되었습니다 — 편안한 가로 모드. 휴대폰은 세로입니다. 작은 화면에서 서커스가 작동하게 만드는 것은 생동감을 잃지 않으면서 레이아웃을 다시 생각하는 것을 의미했습니다.

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.

더 큰 도전은 가독성이었습니다. 휴대폰 화면에서 데스크톱 스케일로 그려진 벼룩은 그저 점에 불과합니다. 벼룩 몸체를 확대하는 줌 패스를 추가하여 의상, 표정, 액세서리가 실제로 보이도록 했습니다 — Pip의 머리띠, Rex의 헬멧, Blaze의 작은 왕관. 항상 거기 있었던 개성 디테일이 갑자기 팔 길이 거리에서 읽힙니다.

나머지 모바일 개편은 덜 화려했지만 그만큼 중요했습니다: 터치 친화적인 탭 영역, 더 나은 폰트 스케일링, 마케팅 사이트 전반의 반응형 간격. 혁명적인 것은 없습니다 — 서커스가 어디에서 발견되든 제대로 보이도록 하는 것뿐입니다.

의상, 계절, 그리고 링마스터

이번 주는 시각적 깊이에 관한 것이었습니다. 콜로니의 각 벼룩이 이제 고유한 의상을 입습니다 — Nova는 줄 위에서 파라솔을, Rex는 대포에서 헬멧을, Blaze는 불 뿜기 공연을 위해 왕관을 씁니다. 작은 디테일이지만 한눈에 알아볼 수 있는 정체성을 각 공연자에게 부여합니다.

무대 자체가 달력에 따라 변합니다. 계절 파티클 시스템이 겨울에는 눈을, 봄에는 벚꽃을, 여름에는 반딧불이를, 가을에는 떠다니는 낙엽을 뿌립니다. 실제 시계에 연동된 은은한 주/야간 색조도 있습니다 — 골든 아워에 띠가 따뜻해지고 해가 진 후에는 어두워지며, 밤하늘에는 더 밝은 별이 빛납니다.

가장 큰 추가 사항은 링마스터입니다 — 실크 모자를 쓴 특별한 벼룩이 공연 사이를 돌아다니며 쇼를 점검합니다. 공연하지 않습니다; 감독합니다. 순찰 경로를 올바르게 설정한다는 것은 공연 전환이 끝나는 바로 그 순간에 도착하도록 걸음을 맞추는 것을 의미하며, 이는 이전에 없었던 안무의 느낌을 전체 서커스에 부여합니다.

내부적으로 완전한 테마 시스템이 이 모든 것을 구동합니다. 8가지 색상 팔레트와 월별로 적합한 것을 선택하는 자동 계절 모드. 모든 공연과 UI 요소의 모든 색상이 활성 테마에서 가져오므로 전환이 덧붙여진 것이 아닌 매끄럽게 느껴집니다.

v1.1.0: 두 가지 새 공연

버전 1.1.0에서 저글링 공연과 불 뿜기 공연이 추가되어 총 7가지 라이브 서커스 공연이 되었습니다. 두 공연 모두 나머지 쇼를 구동하는 동일한 에너지 시스템—키 입력, 마우스 움직임, 클릭—으로 작동합니다.

저글러는 실제 포물선 궤적으로 여러 개의 공을 추적합니다. 개수는 에너지에 따라 달라집니다: 유휴 시 두세 개, 최대 출력 시 최대 여섯 개, 관중이 열광할 때는 등 뒤로 잡기까지. 타이밍을 맞추기 위해 각 공의 위상을 분리하여 뭉치지 않도록 해야 했습니다.

불 뿜기 공연은 기존 파티클 시스템에 새로운 열 아지랑이 효과를 추가했습니다. 화염 길이는 에너지에 따라 커지고, 클릭 시 보너스 폭발이 발생합니다. 가장 까다로웠던 부분은 색상 블렌딩이었습니다—바닥의 짙은 빨강에서 끝의 밝은 노랑까지 띠가 지지 않고 부드럽게 전환하는 것이었습니다.

두 공연 모두 기존 순환 시스템에 통합되어 원래 다섯 개의 공연과 함께 번갈아 등장합니다. 특정 공연을 고정하고 싶으시면, 설정 패널에서 개별 공연의 켜기/끄기를 전환할 수 있습니다.

역사 페이지 뒤의 역사

FleaWinder의 역사 페이지는 1665년 로버트 훅의 현미경 스케치부터 오늘날에도 활동하는 옥토버페스트 공연자까지, 400년 이상의 실제 벼룩 서커스를 기록합니다. 이 페이지를 작성하기 위해 빅토리아 시대의 전단지, 디지털화된 신문 기사, 그리고 곤충학적 오락에 관한 놀라울 정도로 많은 학술 논문을 읽어야 했습니다.

가장 어려운 부분은 무엇을 빼야 할지 결정하는 것이었습니다. 루이 베르톨로토 혼자서도 책 한 권을 채울 수 있었습니다 (실제로 그는 여러 권을 썼습니다). 타협점은 주요 사건을 짚는 연표와 더 깊이 알고 싶은 사람을 위한 펼쳐볼 수 있는 섹션들이었습니다.

이 페이지는 드롭 캡, 장식적 구분선, 세리프 서체를 사용하여 설명하는 전단지와 광고 전단의 느낌을 재현합니다. 모든 섹션은 기본적으로 접혀 있어 독자가 부담을 느끼지 않지만, 첫 번째 문단은 항상 드롭 캡과 함께 보이도록 하여 흥미를 끌어냅니다.

모든 텍스트는 영어, 스페인어, 독일어로 제공됩니다. 번역 과정에서 흥미로운 지역 역사가 드러났습니다—예를 들어, 옥토버페스트의 독일 Flohzirkus 전통은 런던과 뉴욕 장면과는 별개의 고유한 계보를 가지고 있습니다.

FleaWinder를 만든 이유

컴퓨터가 살아있다고 느끼게 해주는 무언가를 원했습니다—산만하게 하는 방식이 아니라, 여러분의 존재에 반응하는 조용한 동반자로서. 대부분의 화면 보호기는 자리를 비울 때 활성화되지만, FleaWinder는 여러분이 돌아올 때 활성화됩니다.

아이디어는 단순했습니다: 운영 체제가 무시하는 모든 유휴 입력—타이핑의 리듬, 마우스의 속도, 클릭의 박자—을 가져와서 애니메이션 서커스 벼룩 극단에게 먹여주는 것입니다. 더 많이 일할수록 쇼는 더 생동감 있게 살아납니다.

작업 표시줄 위의 투명한 오버레이로 만드는 것이 적절한 제약이었습니다. 항상 보이지만 절대 방해가 되지 않습니다. 직접 상호작용하지 않습니다—그냥 일하면, 그것이 반응합니다. 기술적 과제는 절대 포커스를 뺏지 않도록 진정한 클릭 통과를 구현하는 것이었습니다.

FleaWinder는 빅토리아 시대의 벼룩 서커스에 보내는 러브레터입니다—시계 제조공들이 실제 벼룩에 마구를 채워 미니어처 마차를 끌게 하고 줄타기를 시킨, 수 세기에 걸친 실제 예술 형태. 역사 페이지에서 그 이야기를 전부 들려드립니다.