P R O J E K T YK O N T A K T

COLOPHON

CZYM ZBUDOWANE

STACK
Next.js 15 (App Router) · TypeScript · Tailwind (tokeny przez CSS vars)
SILNIK
własny canvas ASCII/PIXEL — rAF singleton, tick 90 ms, zero bibliotek animacyjnych
FONTY
Departure Mono + Inter, self-host, pełne ąćęłńóśźż
NARZĘDZIA
Claude Code (ponytail, /loop) · playwright · Vercel
ZASADY
zero border-radius, zero blur, kolory tylko z tokenów, reduced-motion = statyczna klatka

[FIG. C-0] FIGURY SILNIKA — ŻYWE EKSPONATY

[FIG. D1] TERM-DECODE 3.1 · scramble 400ms → lock co 120ms → hold 3s → rozpad Bayer 400ms · max 3 słowa
[FIG. D2] STAR-FLARE 3.2 · błyski co 1,8–4,2 s, karmienie 4 ticki, stygnięcie 0,86/tick · max 2 naraz
[FIG. D3] NOISE-HOVER 3.3 · hover = 300 ms szumu Bayer → inwersja; fokus klawiaturą bez szumu
[FIG. E-1] WAVE 3a · 6000 CELLS · klik = impuls · max frame: 0ms
[FIG. E-2] MODE: ASCII · CELL 6px
[FIG. E-2] MODE: BAYER1BIT · CELL 6px
[FIG. E-2] MODE: DUOTONE · CELL 6px
[FIG. E-3] HEAT 3b · kursor rozżarza materię (accent > 0.7), stygnięcie 0.86/tick
[FIG. E-4] CURTAIN 3c · Bayer w czasie — obraz „wywołuje się” jak odbitka

NAJEDŹ NA MNIE — HOVER SCRAMBLE

[FIG. E-5] SCRAMBLE 4 · decode 35ms/znak + hover 250ms (░▒▓)
[FIG. E-6] PIXEL-WARP 5 · kurtyna Bayer od punktu kliku, cover 400ms + reveal 500ms, scroll przerywa