A devlog by Neeraj Kotwani, who builds every game on Elipar.
The Kids category had exactly one game in it, and that game was a 3D endless runner. So it needed a second one, and the easy move would have been another runner or another reflex game — the site already had the patterns for both, tested and working.
Critter Match is a memory game instead: eight pairs, sixteen cards, flip two at a time. Deliberately a different shape, and the part worth writing about is what had to be left out.
No lives, no timer, no fail state
Every reflex game on this site runs the same frame: three lives, a timer that shrinks as your streak climbs, and a game over. It is a good frame and I had it to hand.
It is also wrong here, for a structural reason rather than a tonal one. A memory-matching game genuinely cannot be lost. Keep flipping and you will eventually turn over both halves of every pair; the only variable is how long it takes. Bolting a lives system onto that would mean inventing a failure that the game does not have — punishing a child for not remembering fast enough, in a game whose entire mechanic is remembering.
So: no lives, nothing that ends the run early, and finishing is never in doubt. The score rewards fewer moves and less time, so there is something to get better at, but the floor is "you finished" rather than "you ran out".
That lower-pressure format is a better fit for the audience than the site's usual timer-and-lives pattern, and it is the reason this game is in the catalogue at all rather than a third reflex quiz.
I have since applied the same reasoning twice more: the picture puzzle in this category bounces a wrong piece back to the tray rather than penalising it, and the mini golf game has no way to fail a hole. A fail state is a design choice, not a default.
Eight hand-drawn icons, no emoji
Sun, star, heart, cloud, flower, apple, fish, butterfly — each one inline SVG built from simple shapes.
The reasoning is the same as the flag quiz here: emoji rendering is inconsistent across operating systems and browsers, and a memory game where two card faces look alike on some phones is not a hard game, it is a broken one. The whole mechanic rests on telling eight things apart at a glance at small size.
Simple shapes also matter for a reason I learned the hard way on a later game in this same category. An elephant drawn as one complex self-intersecting path rendered its trunk completely invisible, because the trunk was filled in the same colour as the head it overlapped. Nothing in the SVG source looked wrong. Ellipses and circles cannot self-intersect into an unexpected fill, which is a boring property and exactly the one you want.
The flip is a real 3D transform
A card turns over by rotating the inner element half a turn in 3D, with both faces having their back sides hidden, rather than cross-fading one image into another.
That is more code than a fade and it is the right call, because it matches what the gesture means. A cross-fade reads as the card changing; a rotation reads as the card turning over, which is what a child is doing with their finger. It also reuses the same flip language the arithmetic game's problem card already established, so the catalogue is consistent about what that animation signifies.
Verified by playing it programmatically
Screenshots are not much use for a game that is mostly state. So before looking at it at all:
Build the deck and assert all eight icons appear in exactly matching pairs — a shuffle bug that produced three of one icon and one of another would leave a board that cannot be completed, and would look completely normal. Then exercise the mismatch path and the match path independently: two different cards flip and both reset after the delay, two matching cards stay. Then solve the entire board pair by pair through the real click handler rather than by calling internal functions, and confirm the win overlay and the score message both fire.
Going through the real handler is the part that matters. A test that calls the match-checking function directly would have passed on a game whose cards were unclickable — which is not a hypothetical, because exactly that happened to the picture puzzle in this category, where a styling property on the dragged piece meant real drags never completed while every direct-call test passed.
The mobile fit was also measured inside the real embedded frame at a normal phone width and at the smallest one I support, rather than in a browser window. Those two can differ by more than a hundred pixels of height, and the difference is content that is clipped.
Critter Match is free in a browser, no account, no download. You cannot lose it.