About

One person
built this.

WojakMeter reads the crypto market and puts the result on a face. Not a mood board — a measured composite index, recalculated every fifteen minutes, expressed through a character that actually reacts. Every part of it, from the index engine to the sprite sheets, was designed and written by one developer.

The Feel Guy

Before the index, there was the face.

Wojak — Polish for soldier — is a bald, blank-eyed figure drawn in MS Paint that surfaced on European imageboards around 2010 and spread from there to everywhere else. He was never a punchline. He was posted alongside four words that explain the whole thing: I know that feel bro.

That is what made him last. Other memes are jokes you get or you don’t. Wojak is a way of saying this is what it feels like right now, and trusting that someone else has felt it too. Over fifteen years he grew into a vocabulary — the doomer, the bloomer, the pink one who just got liquidated, the green one with laser eyes — and crypto adopted it wholesale, because crypto is a market where the feeling arrives before the analysis does.

Wojak expressing frustration
FrustrationLiquidated. The red one.
Wojak expressing neutral
NeutralWaiting. The original feel.
Wojak expressing euphoria
EuphoriaLaser eyes. The green one.

Traders were already narrating the market through that face long before this site existed. Green candles, laser eyes. A bad week, the pink one. The reading was there — it was just anecdotal, scattered across timelines, and nobody was keeping score.

WojakMeter measures what the meme was already saying.

That is the entire idea. The index does the arithmetic; Wojak does the talking. He is not a mascot bolted onto a dashboard — he is the reason the dashboard reports an emotion instead of a percentage, and the reason a score of 19 reads as something you feel in your stomach rather than a number you have to interpret.

Wojak belongs to the internet, not to this project. The drawings here are original artwork in that tradition, made for this site.

The index

Six components, not one number pulled from the air

Return, breadth, volatility regime, volume anomaly, dominance rotation and headline tone, each measured separately and weighted (0.30 / 0.22 / 0.15 / 0.13 / 0.10 / 0.10). Every component is normalized with a robust z-score against a 90-day window, then mapped through a fixed tanh curve so the scale stays comparable over time. When a signal goes missing its weight is redistributed; when too much is missing the engine returns nothing rather than inventing a 50.

The character

One face, twenty-one readings

A four-axis rig — valence, activation, tension, fatigue — picks a sub-emotion from seven base moods and modulates speed, tremor, tilt and desaturation to produce twenty-one distinct readings from seven sprite sheets per style. Idle loops run at 24 frames on a 6×4 grid, generated with a mesh-deformation script for the Classic style and per-cell LED switching for Synth.

The game

Emotion Rush, with the scores verified server-side

A reaction game where the market's live state tints the board and sets the tempo. Scores are validated on the server before they reach the leaderboard, because a client-side high score is just a number someone typed. The break-up sprites — seven strips of eight frames — are generated in code with a Voronoi fracture, the core separated from the shell and the incandescence baked into the fragment edges.

The plumbing

Test harnesses, because a syntax check is not a test

Several smoke harnesses load the real modules against a simulated DOM and assert their behaviour — the game, the hero rig, the canonical index, the history endpoint, the preview workshop. Together they run around 170 checks. They have caught a stub that made tests pass while the code was broken, and live functions deleted during a cleanup. Snapshots are written every fifteen minutes by a scheduled job.

What it isn’t

It is not a signal service and it does not predict anything. The index describes conditions that already happened — that is the whole design. It is also a work in progress: the methodology gets revised, features get removed when they confuse more than they help, and some parts are held together by scripts I would not hand to a client without cleaning first.

Saying that costs nothing. What the site claims to measure, it measures honestly, and that mattered more to me than shipping something that looked finished.

Who

I’m Eduardo Cerna, and I go by Edzrna online — a graphic designer turned developer, working as a solo builder. That combination is why this site looks the way it does: the same person drew the character, wrote the normalization math, built the game and set up the deployment.

Most of what you see here would be a team’s worth of work in an agency: art direction, animation pipeline, data engineering, front end, back end, infrastructure. I’m not saying that to impress anyone. I’m saying it because if you need something built end to end by someone who can hold the whole thing in their head, that’s the skill this site is evidence of.