A snake with nothing to lose to.
That is the whole idea.
Wraps at the edgesPasses through itselfStop whenever

No score, no clock

Nothing counts up and nothing counts down. Miss an apple and it costs you nothing — you turn around and come back for it.

It leaves the right edge and comes back on the left. With reduced motion it sits still.

Lab · Just for fun

Snake Game Remix.

Kind
Just for fun
Role
Design + code
Stack
Vanilla JavaScript · Canvas · Parcel
Started
2020

Snake, read back without the rules that end it. No walls, no fatal tail, no score, no clock — you move the line around the board, and when you have had enough you press Reset or you close the tab.

Every rule in Snake is a way to lose

The version everyone knows is built out of failure conditions. The wall ends the game. Your own tail ends the game. And because the tail grows with every apple, doing well is what eventually kills you — success and failure are the same mechanic seen from two ends. It is a tight design and it works, and it is also why playing it is a tense thing rather than a calm one.

oafish-ants.surge.sh Open in a tab ↗
The deploy from 2020, embedded live — press Play, then the arrow keys; the frame takes the keyboard once you click inside it

Take them out and something else is left

Here the snake wraps at the edges and passes straight through its own body. Nothing on the board can end anything, so a miss is not a mistake — you go around and come back for the apple. There is no score climbing, no timer draining, no length that turns against you. What is left is the movement: steering a line around a board, at whatever pace you feel like, which turns out to be enough on its own.

Reset, or just stop

Without a game over there is no moment that tells you to leave, so the game does not try to hold you. Had enough? Press Reset and the snake starts over, or close it and come back another day. Nothing was accumulating, so nothing is lost by walking away — which is the opposite of what the original is designed to do, and the entire point of this one.

Written for a first time at a keyboard

It was made for my son the day he first sat at a keyboard, and that is where the rules went. Every death is an interruption that needs an adult to come and explain it, and with someone still learning where the arrow keys are, there were a great many of them. Vanilla JavaScript on a canvas, no framework, nothing but a bundler. The deploy above has been answering since 2020, and the soundtrack is still the one he asked to hear.