Check out demos from previous editions too! 2011 , 2012 , 2013 , 2014 , 2015 , 2016 , 2017 , 2018 , 2019
Move the ball through the game using the mouse cursor. Try to collect as many coins as you can before the time is over, and make sure the ball doesn't drop through any holes! Warning: directions are r…
It was suppose to be a game called "Circles vs. Squares" where a circle shoots around squares enemies. Well, I didn't find the time (and space) to add the squares :) so it is apparently became just a…
Draws basic fractal (I forgot it's name). Click to draw next degree... Beware - if you go farer than 10 clicks or so it may kill your browser ;)
A simple text editor that automatically highlights Javascript code in the textarea as you type. (an edit-in-place syntaxhighlighter)
Night scene. Procedural trees, grass, shooting stars and the moon. Click anywhere to shoot a star.
An (text)sinescroller and 2d starfield inspired by old Amiga cracktro's which often came with cracked games in the early 1990's.
A game. The objective of each level is to get the water level to the top of the screen. Water is displaced by green beach balls, which are created and expanded by pressing and holding the mouse button…
Creates and plays a WAV or MP3 (depending on browser) of your message encoded in Morse code.
An examination into golden ratio, inspired by Simppa's LoopPump Flash-demo: http://www.simppa.fi/experimental/as3/2009/math/LoopPump/
Imagine creating a watercolor painting with a thousand tiny, living brushes. That's what this is. Let it run for a while and use your mouse to lure the brushes. Or don't and let them paint on their ow…
Turns the browser window into the Matrix. Press "s" to start/stop the generation of new matrix entities.
A sokoban clone using ASCII. You're the man (@), trying to push the crates ($) on the goals (.). When a crate is on the goal, it becomes a (*).
Raytracer with spheres, point lights, ambient, diffuse and specular lighting, shadows, and reflective surfaces. Tested in Firefox and Chrome, works much faster in Chrome.
The flying carpet. A little contemplative recreational experiment with the RGB color cube.
Enhanced spiral, highly customizable (see full source for details). Has approx. 5 chars left for you to use for customizing the values :) The values of 1 and the red color yield to a rose. Other value…
A match-three game, minus the jewels (and animations). Click two adjacent boxes to swap them, 3 or more of the same color in a row scores.
Tagcloud driven by a simple 3D engine that features rotation matrices (x, y) and some simple camera translation. done without canvas. move your mouse.
Rainbow visual effect thingy. Click on it to go "fullscreen" (stretches canvas to screen edges).
Yellow vs. Red, a roguelike game. Movement with mouse. Enemies are red, health green, level exits black. Walls can be moved like sokoban. Gaining enough experience or clearing level gives you extra he…
Raymarcher, flying through a torus field and a cube field, alternately, smoothly blending between the two, with soundtrack, and a few bytes to spare. Potentially a bit heavy on the CPU. ;) Much thanks…
JSGrappler - You are a little pixel armed with a grapple cable, click to shoot it at the platforms, catch a platform to fling yourself higher. If you fall below the bottom (even while grappled-(featur…
High resolution animated 3d balls with brushed surface shading and depth-of-field effect (all fake).
A puddle simulator - click anywhere to make it rain. It is a simulation of the 2D wave equation: (http://en.wikipedia.org/wiki/Wave_equation).
A poem for the dyslexically inclined or something to keep your right brain entity-ertained. And it comes complete with an acrostic and a numeric pun.
An (text)sinescroller and 2d starfield inspired by old Amiga cracktro's which often came with cracked games in the early 1990's.
Move your player with the mouse, try to avoid the red dots, and the green dots give you (temporary) invulnerability. Your score is in the upper left hand corner. Based on Hakim El Hattab's Sinuous at…
This is a simple maze game. The algorithm chooses a random starting point and random directions and continues till it reaches any end of horizontal axis.
A homage to the Amiga Boing Ball, inspired by http://www.youtube.com/watch?v=-ga41edXw3A .
An artillery duel modeled after Tank Wars. With a few necessary modifications, obviously.
3D walk through a metaball Landscape. Can either be watched or used interactively. Pressing mousebutton builds up a growing metaball, which can be moved around.
Columns, the classic competitor to Tetris. Left and right arrow keys move; up cycles the order of the falling gems. Line up three matching colors in a row. Get combos and chains to score lots of point…
Mandelbrot set fractal rendering with simple color cycling effect. Colorizes values contained in the actual set for a water droplet skin effect animation.
Bounces some boxes around and uses gravity. Original code (with by hand minification): 1021 lines, minified down to 781.
This demo try to mimic the 80's arcade game "STAR WARS", when Luke has to destroy the death star.
v1.2 of Missile Command like game. Score is now alerted before game restarts. Use mouse to aim and shoot.
This is a turn based two player car race game. We used to play this on squared paper in school during math class :) Poke around with your mouse to see the possible next steps. Try to stay on the road.…
Simple water simulation based on cellular automata, with refraction and reflection rendering. Move mouse to make ripples.
We show a animated draw of a four corners Sierpinski polygon. It generalizes the usual Sierspinki triangle of fractal theory.
Television Simulator/Quine: A quine is a program that prints its own source code. However, that does *not* mean it is easy to read its printed output.
I see all competitors are making demos nicer and nicer, but my demo was just bump map of blurred letters :)
Simple, quick and dirty "two 3D advancing planes" raytraced with a 4x4 grid. The depth is taken into account.
It's a Brainfuck interpreter, including mini-IDE. It's heavily hand-tuned and finalized with the Microsoft Ajax Minifier. Brainfuck is a turing language with 8 commands, <>[]+-,. which operate on a st…
A mix between brick breaker and pinball, featuring super cool animated bumpers! Use L and R arrow keys to play. Actually any key will work for L! (its not a bug its a code-reducing "feature") The game…
It's all about the code. This script uses it's own code to supply the visuals. How cool is that?
Updated version of my mandelbrot zoomer : you can now specify the zoom depth (2^choice), the window size in pixels (square) & the zoom coordinates.
ASCII-Art Mandelbrot explorer, ported from T-SQL to JavaScript and then compressed to 1K
Tetris game as close as possible to the original one. Ascii representation of pieces. Use arrows to play, allows dropping pieces with down. Lacks "game over" message due to size limit. No sound track…
tweet-sized entry: Embossed Mandelbrot Fractal rendered onto an HTML5 Canvas element
This app encrypts a text (userinput) into a picture containing just alpha values which represent single characters. Decrypt by reading pixelwise and creating strings from charactercodes. E.g. you coul…
Just some flying particles, aiming for a certain point. Default is center of canvas, but if you hover over it, they'll follow the mouse.
Snow flakes in a vector field. Wind happens about once every 10 seconds, wind reset after each wind occurs.
Lots of bouncy balls. Move the mouse and nearby balls will follow. Click and all the balls follow.
High resolution animated 3d balls with brushed surface shading and depth-of-field effect (all fake).
Tried to get something really interesting in 140 bytes. I wasn't successful, but I kept compressing the effect to what it is now. Enjoy.
To replace my previous vomit inducing demo, this one generates a cellular texture, which changes color and moves around. Larger windows have performance issues when using Firefox.
Final version of this wave/rubber fx : added 'elastic' like fx and better lightning. However, I had to simplify a bit the waves fx to match the 1024 bytes limit...
A goofy doodler that is evocative of contrails, bubbles, intestines. Use your mouse, experiment with stroke speed and shape.
bouncing balls which explode after a while. for those exploded new balls appear after a while.
Tweet-sized blocks of colour. Colour choosing technique lifted from http://js1k.com/demo/230 ;)
A simple AllRGB entry in 1k. Generates an image containing every possible RGB colour.
Play a game of draw poker. Use 1-5 number keys to choose which card(s) to discard, "Enter" to draw.
A 52 Card Pickup game gone wild! An infinite number of cards scatter on the table for pickup.
Another Mandelbrot fractal stuff, but this time with 'realtime' zoom. A bit slow to start, but after having clicked on the spot you want to zoom, will zoom smoothly from x1 to x65536.
Generates interesting JS1K logos (in a tweet!). Updated with a more interesting shape, and decoupled the position from the shape (I could spare the bytes).
It's a simple 8-bar tracker that generates on-the-fly mixing & generation of WAV files composed of multi-note bars at 4000/16/1.
a simple 2d function plotter. you can use some functions and constants like sin, cos, pow, ... (see demo itself). primitive x- and y-axes are drawn, you can even change the viewport.
Simulates the collision of 700 balls with conservation of momentum. The ball's mass is relative to its radius.
random whirling lines base on my old screensaver code http://sourceforge.net/projects/win32scr/
The usual flying dots under gravity with color and size variation. The kicker's in the compression.
Your friend went to Stockholm for a vacation and you are in charge of keeping your mates fish alive.
A recreation of the Laughing Man from ghost In the shell, Updated to use the proper font. (If in linux make sure you have the msttcorefonts package installed.)
Television Simulator/Quine: A quine is a program that prints its own source code. However, that does *not* mean it is easy to read its printed output.
Visualizations of iterations of candidates (along a random straight line) for Julia sets defined by the quadratic polynomials.
The Amiga boing ball, as seen here http://www.youtube.com/watch?v=-ga41edXw3A, although this time in actual 3D: a camera rotation instead of a palette rotation.
simulation of collisions of 700 balls with conservation of momentum. The radius of the ball is it's mass.
Minesweeper. Fixed height+length. Approx. 10-15 mines hidden. No timer. If you click on mine you loose (red cell) and gameboard is revealed. If you click on mine-free cell, this cell is colored green…
A visual representation of a stripped-down bubble sort algorithm producing diagonal lines pattern. Total size : 323 bytes.
Simple water simulation based on cellular automata. Move mouse to make ripples. Fast in latest Chrome and Opera, slow in Safari 5, almost inert in Firefox 3.6.
Eliminate the blue pieces by clicking anywhere on the board. 8 : 50 isn't the time - it means you have 8 moves to clear all 50 pieces.
Randomly generates color boxes. Each click on canvas uses the x and y position to determine rgb color range of the boxes and background.
A 3d water simulation based on an assignment i once had to optimize for a course.
Allows you to run the Flash ActionScript tweetcoding demos that focused on graphics based demos - but on a canvas. Copy and paste examples from the follow url to see ActionScript render right before y…
The flying carpet. A little contemplative recreational experiment with the RGB color cube.
Initially an attempt to recreate Battlezone in javascript, then cut down to a simple first person engine to keep it under 1k.
Maze-CAD program for villains. Design your maze then watch a simulated hero navigate it. Try to make your maze as long as possible, and after each round it will tell you the score for the last round a…
Side-scrolling fighter game. Arrow keys move, space fires. Second version now has more of a retro look (and fixes some bugs).
"If a million* monkeys^ sit at a million* pixels and randomly change them, they will eventually produce the Mona Lisa."
Pixel Painter game. Click on the colors at the bottom to 'fill' the top left pixel (and others like it) with that color. You have a limited number of moves to paint the entire board. It's very addicti…
An homage to the 8-bit Atari version of Boing (http://www.youtube.com/watch?v=bhBzmnH_fRQ).
Organ1k, "An organic play of color that will hopefully keep you staring endlessly." Just sit back and watch or interact with the mouse! Read all about the concept and byte-saving techniques used at ht…
lookup table based displacement. borrows heavily from other prods here, got the lookup math here: http://openprocessing.org/visuals/?visualID=3624
The flying carpet. A little contemplative recreational experiment with the RGB color cube.
Collection of old school effects (sinus scroller, raster lines, starfield, etc.). This marks my return to the demo scene after a 22 year hiatus. :D
A simple old-style PONG game. Pad size changes as you scores to level the game. Wins the first that gets without pad.
Rorating cube - small update. No scale/pulse and motion blur but fixed height and dynamic shadows
A web page screensaver, able to transparently overlay any page if a user leaves their computer idle for too long. Makes for a great easter-egg on an otherwise boring site.
Two swarms of fireflies chase each other around. The same flocking algorithm is used on individual fireflies and on the swarms themselves.
"Formula 1K" - a racing simulation. Experience the adrenaline rush of sheer horse-power and blistering speed.
TB-303 Emulator, tweak the JSON, hit OK and your acid line will be rendered to an audio tag, turn up your volume and hit play :)
An implementation of Substrate (http://complexification.net/gallery/machines/substrate/)
Animated unshaded raytracer. Renders an animated ring of spheres against a shaded background.
Yellow vs. Red, a roguelike game. Movement with mouse. Enemies are red, health green, level exits black. Walls can be moved like sokoban. Gaining enough experience or clearing level gives you extra he…
Throw a ball around with two rubberbands, one connected to the mouse cursor and the other to the ball in the center.
Backround color flasher, to change the background color move or click the mouse or use the scrollwheel.
A simple text editor that automatically highlights Javascript code in the textarea as you type. (an edit-in-place sh)
This script draws a TURMITE which is a Turing machine which has an orientation as well as a current state and a "tape" that consists of an infinite two-dimensional grid of cells.
Implemented the perlin noise algorithm. It's pretty big, so there wasn't much room left. But i love it so much. Click the canvas to generate a new seed.
Color picker extraordinaire™. Move mouse, scroll and/or click to adjust the color. Also, try resizing the window!
Draw a groovy background pattern. Press 'u' to undo. [updated to make the undo feature suck less]
SquareRaid is a lunar lander type game... except instead of a lander, you're a square, and instead of landing, you're mercilessly carpet-bombing evil enemy squares, and instead of taking place on the…
"The Black Hole" - Particles+Gravity. The number of particles is dynamically adapted to the power of the host. Obviously prettier with lots of particles...
Old school (circa 98) mouse trail in under 1/2 a K. Uses an object pool to minimize memory usage and HTML/CSS3 to create the trail. No canvas required. Update 2: Slightly smaller (tighter CSS footprin…
I gave JavaScript objects an identity. They are flies. They live; they reproduce; they die. Sit back and watch them evolve based on the rules of their world, or take a more active role in their evolut…
A very simple synthesizer playing "The Drunken Sailor". This is not so much a demo as it is a component for other demos. It is not minified, except at the most basic levels and the notes notation isn'…
Fireworm: Eye candy with the gradient drawing tools of the canvas tag (no direct image writing) and a little bitmapped logo coded into 30 characters of ASCII (6 pixels a char, eh!) And thanks to Peter…
"The Legend of Ecma." Descend the dungeon to find the amulet of Ecma and then return it to the top floor. Monsters subtract 1 health, potions add 1 health. Features: 1 bit pixel art, randomized dungeo…
Provides a function to generate and animate a spinner. You can customize the following options:
A re-implementation of http://www.barryvan.com.au/demos/swarms/swarms.html, which in turn is a reimplementation of a Processing script that I wrote. :)
The popular Hacky Sack game for the browser. Just click the ball to make it jumping around. Colour your life ;-)
A random terrain generator with a Linear Congruential Generator to generate pseudo-random numbers that give a bit more organic result.
Just another Matrix display, but a bit more true-to-form than the others I see here already. Glyphs are hiragana, katakana, and maybe some other junk.
Smalls avoid bigs, bigs eat smalls. Life as it happens to be. You can even bet on it.
An interactive Query tool for the Web SQL DB API (see http://dev.w3.org/html5/webdatabase/)
A *very* basic japanese IME (input method editor) which automatically converts romaji to Katakana (by default) or Hiragana.
3D Lorenz attractor with an oscillating Prandtl number. Rotation adjustable by mouse movement.
A simple ever-changing, multi-coloured fence disappearing into the distance. Fits in a tweet, complete with #JS1K hashtag!
Tower of Hanoi. Interactive. Move the disks from the left rod to the right. Bigger disks can't be placed on smaller ones.
Color Tetris in 1024 bytes of JavaScript. Hand-packed. No funny bit-shifting operations.
Some bugfixes on my Syntax Higlighting Quine. Also killed a few bytes but added a lengthy comment in turn.
Update: Adds Opera compatibility by replacing location.search parsing with parent.variable for counting. See previous entry for description.
In a tweet: Randomly colorizes the elements of a page. Unfortunately, the demo page only has three visible elements. Ver.2, down to 120b)
Version 2 of the Guilloche Pattern generator, now with some sliders (or simple inputs, sorry ff).
This is a basic implementation of Conway's Game of Life that is a representation of cell automation.
The script renders a 2d image of a road running through a desert. It's dumb, but it does fit in a tweet...
Updated version of the Warp Starfield demo. Tracks the mouse to modify the direction of the warp field, plus you can use the mouse scroll-wheel to control warp speed!
Conway's Game of Life! Mouse interacts with the canvas. Clicks toggle between "fading" and "classic" mode. Full version available here: http://www.eng.utoledo.edu/~scline/life/life.html
Classic Simon type match game. Click "New Game" watch the colors, click the same pattern once it has stopped. See how far you can get.
Generate and explore a random maze. Creation uses Prim's algorithm and exploration implements a simple wall follower.
True binary clock. Shows number of milliseconds since Jan 01 1970. Fits in a tweet.
Minesweeper game - if you win, the mines are drawn in green. If you lose, you explode.
This 1k app generates a realtime heatmap depending on the user's mouse movement (default map size is 999x500)
Conway's Game Of Life (http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) in precisely 1Kb.
Just a short 'video' of some sort of space flight. I'm not really sure and was just playing around :)
A little romantic waterfall in a nostalgic color palette. In other words: Random ASCII blocks scrolling down. Not exactly 140 bytes in utf-8, but still 140 characters (Twitter accepts it).
Generates procedural water ripple effects on top of a randomly generated gradient background.
The "Minimalist todo list" can be used as a task manager, simply type your task and press Enter to add task. To remove task simply hover the task and click.
A 1K version of the all-famous Flash game Bubble Trouble (Google it!). Move the mouse to move, press left mouse button to fire, don't get hit by a ball and try to destroy all the balls.
Retro Astro Lander clone (well, that's what it was called on Timesplitters 2!). Use the space bar to keep the rocket from accelerating into the terrain. Keys A and D rotate the rocket to allow side…
JavaScript implementation of the "classic" water ripple demo. Move mouse pointer over the image to get more ripples.
A demonstration of evolution by natural selection in 999b. View the source, it's pretty. Visit 29a.ch for more details.
Simple side-scrolled space game. Control spaceship with your mouse and try to avoid pink rects. I made first version of that game in almost 1,7kb and it looks much better nicer, try it here: http://no…
A simple random maze generator, using the Recursive Division method described on Wikipedia. The code was hand-tuned for size (which mostly involved extracting common sub-expressions and removing edge-…
(Probably) final update - now with Blur. Pretty spinning circles that chase the mouse (or finger) around. Click (or tap) to add more circles, press any key to toggle blur on and off. Blur also toggles…
Arkanoid/Breakout game. Use left/right arrow keys to move the platform, F5 - new game. Only one level (It's only a demo).
A 3D chequered tunnel like effect. Use mouse to create different effects, x axis changes rotations speed, y axis changes how quickly image fades away. Click the canvas removes a square/arc, making the…
An RGB color spectrum mixer, controlled by your mouse movements. Move left to turn up red, right to turn up green, and down to turn up blue. Great for music visualization, become your own lighting D…
Simple Perlin Noise implementation on canvas. Its very slow on firefox but it runs.
A tweet-length JavaScript quine (a program that outputs it source). As I'm a juror, this is for the showcase. :)
Meant to be used with client-side graphing/analysis tools, as a more dynamic means of rendering graphical reports and charts.
A metronome with an audible tick and configurable BPM. Audio does not work in Chrome (lacks support of wav, huh), so I'm considering it an extra feature. ;)
Poor Man's ASCII Art generator: draw on a canvas on the left, behold the ASCII art on the right. Reload to start over.
Updated - Coloured particles bouncing around the screen. Colour of the particle changes depending on it's proximity to the 3 coloured points.
There can be no size compo without a Quaternion Julia raymarcher ( using Hubbard-Douady distance estimator )
Updated version of gravity submission. Click to add a dot, the size is determined by amount of time the mouse was down, position is determined by where you click and initial velocity is the distance f…
(update) Reduced 50bytes thanks to Closure Compiler (http://closure-compiler.appspot.com/home) and some optimisations by @millermedeiros
Time As Color shows the current time as color by setting red to the hour, green to the minute, and blue to the second. I originally created it in 2000 and it was shown at Gasworks London, Boston Unive…
It's a fancy dancy clock. The innermost, thickest, hand is the hour hand. Attached to the end of the hour hand is the minute hand, and the second hand is attached to the end of that.
This demo tries to emulate a pulsar star. It shines and fades within a period of 2 seconds, approx., and changes its direction when it touches any side (a classic).
This demo displays 100 strings with the value "JavaScript" in random locations of an 800x600 rectangle. The font-family, size, and color are also randomized.
Tweetable test for a web page's accessibility. It finds all the images with a missing 'alt' attribute and highlights each one of them with a thick red border.
Detects and reports on whether your browser supports each of 42 features found in HTML5 and ECMAScript 5 standards.
Classic snake game. Use keyboard arrows to turn the snake. If you hit anything (the walls, the tail of the snake) then the game finishes. Eating brown dots makes the snake to grow longer.
Charmap for HTML, listing characters by their hex entity. Great for finding and testing which symbols work in all browsers.
XMLHttpRequest GET, and POST working in IE since 6.0 and every other major browser in 266 bytes.