Drag the background!
Starter Worlds

The "Starter Worlds" are designed to show you how to write your own Worlds for each of the different APIs.

Clone them and edit them to make changes. Many of them have a section of code called a "tweaker's box" at the top. These are simple lines of code, such as the names of files, that can be changed by anyone without needing to be a programmer. Go and try it:

  1. Pick a World.
  2. Clone it.
  3. Edit the clone.
  4. Change things in the "tweaker's box" and run it again to see what happens.
Starter Worlds for API: Three (AB) (r3)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (AB) (r3) Yes Three.js Yes 1961 Worlds Starter Worlds
Zombie Death Baby
859 runs ♦ 1 like
By Starter user  
Created: 11 Jun 2018
Modified: 17 Sep 2023
How to make a fun touch game for mobile. Touch drag and tap objects. Mouse drag and click object...
Simple World
1898 runs ♦ 2 likes
By Starter user  
Created: 1 Oct 2016
Modified: 17 Sep 2023
Simple World with a Mind-controlled agent, randomly-moving enemy, paint blocks with texture.
Password Websock...
84 runs ♦ 0 likes
By Starter user  
Created: 14 Nov 2022
Modified: 17 Sep 2023
Password version of "Websockets boxes"
One Cube World (...
1306 runs ♦ 2 likes
By Starter user  
Created: 11 Apr 2018
Modified: 17 Sep 2023
Simple starter World (Three.js version). Built-in camera control.
Model World
888 runs ♦ 2 likes
By Starter user  
Created: 8 Nov 2016
Modified: 17 Sep 2023
Demo of how to insert 3d models into World. Mind-controlled agent, actively-pursuing enemy. Skybox.
Blank Three.js World
2050 runs ♦ 2 likes
By Starter user  
Created: 20 Nov 2016
Modified: 17 Sep 2023
A simple starter World. An Array of spheres. Painted with textures. Random motion.
User-controlled ...
1068 runs ♦ 2 likes
By Starter user  
Created: 12 Feb 2017
Modified: 17 Sep 2023
3d model World. User controlled on desktop. Keyboard arrows to move. Switch to "Move with" camer...
Websockets boxes
844 runs ♦ 0 likes
By Starter user  
Created: 29 Feb 2020
Modified: 17 Sep 2023
Demo of Websockets in 3D World. Click to change the boxes on the other user's machine, while the...
MineCraft
1251 runs ♦ 2 likes
By Starter user  
Created: 27 Nov 2016
Modified: 17 Sep 2023
Use keyboard to draw blocks like in MineCraft. Use arrow keys and PgUp, PgDn to draw. Can save w...
Castle World
855 runs ♦ 4 likes
By Starter user  
Created: 11 Nov 2016
Modified: 17 Sep 2023
Demo of how to insert 3d model into World. Mind-controlled agent, actively-pursuing enemy. Splas...
Touch World
483 runs ♦ 1 like
By Starter user  
Created: 6 Jan 2018
Modified: 17 Sep 2023
How to override default touch handling. Mobile: Touch drag moves agent, touch pinch zooms camera...
Complex World
8532 runs ♦ 5 likes
By Starter user  
Created: 1 Oct 2016
Modified: 17 Sep 2023
World with a Mind-controlled agent, actively-pursuing enemy, random maze, skybox, music.
Starter Worlds for API: Physics (AB) (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Physics (AB) (r2) Yes Three.js, Ammo Yes 7 Worlds Starter Worlds
Ammo for AB
483 runs ♦ 0 likes
By Starter user  
Created: 19 Apr 2021
Modified: 17 Sep 2023
Ammo world for AB API
Starter Worlds for API: P5 (AB) (r3)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
P5 (AB) (r3) Yes P5 Yes 146 Worlds Starter Worlds
P5 Mouse tracker
359 runs ♦ 2 likes
By Starter user  
Created: 4 Jul 2018
Modified: 17 Sep 2023
Example of P5 World integrated with AB framework. Desktop: Draw ellipse wherever the mouse hover...
Starter Worlds for API: ML5 (AB) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
ML5 (AB) (r1) Yes P5, ML5 Yes 52 Worlds Starter Worlds
Recognise any image
504 runs ♦ 0 likes
By Starter user  
Created: 10 Jun 2021
Modified: 17 Sep 2023
Try to recognise any image with ML5 and MobileNet. Enter any image URL at runtime.
Starter Worlds for API: Canvas (AB) (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Canvas (AB) (r2) Yes None Yes 22 Worlds Starter Worlds
canvas 2d
369 runs ♦ 2 likes
By Starter user  
Created: 4 Oct 2017
Modified: 17 Sep 2023
Minimal starter World for "Canvas" API (no graphics library). Program using getContext("2d"). Pa...
canvas webgl
588 runs ♦ 2 likes
By Starter user  
Created: 17 Sep 2017
Modified: 13 Nov 2023
Minimal starter World for "Canvas" API (no graphics library). Program using getContext("webgl")....
Starter Worlds for API: Three (r3)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (r3) Yes Three.js No 41 Worlds Starter Worlds
3D for Kids World
76 runs ♦ 0 likes
By Starter user  
Created: 18 Apr 2021
Modified: 17 Sep 2023
Porting a Three.js World (almost) unchanged from "3D Game Programming for Kids"
Plain Three.js World
49 runs ♦ 0 likes
By Starter user  
Created: 18 Apr 2021
Modified: 17 Sep 2023
Porting a Three.js World unchanged.
Starter Worlds for API: Three (Module) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (Module) (r1) Yes Three.js No 143 Worlds None

No Starter Worlds found.

Starter Worlds for API: Physics (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Physics (r2) Yes Three.js, Ammo No 6 Worlds Starter Worlds
Ammo physics demo
143 runs ♦ 0 likes
By Starter user  
Created: 19 Apr 2021
Modified: 17 Sep 2023
Port of "ammo / instancing" from Three.js examples
Ammo physics mod...
116 runs ♦ 0 likes
By Starter user  
Created: 19 Apr 2021
Modified: 17 Sep 2023
Highly modified version of "ammo / instancing" from Three.js examples
Starter Worlds for API: P5 (r3)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
P5 (r3) Yes P5 No 1086 Worlds Starter Worlds
P5 translate ver...
32 runs ♦ 0 likes
By Starter user  
Created: 21 Sep 2023
Modified: 21 Sep 2023
World to examine P5 "translate"
P5 Particle System
219 runs ♦ 0 likes
By Starter user  
Created: 4 Aug 2018
Modified: 17 Sep 2023
Port of P5 site's "Particle System" example with almost no change. P5 plain API. No AB framework...
One Cube World (P5)
2932 runs ♦ 6 likes
By Starter user  
Created: 10 Nov 2018
Modified: 17 Sep 2023
Simple starter World (P5 version). No camera control. So cube rotates to show 3D.
P5 chase World
203 runs ♦ 0 likes
By Starter user  
Created: 4 Aug 2018
Modified: 17 Sep 2023
Example of World with Mind on P5 plain API. No AB framework. Have to call Mind yourself. Mind mo...
Starter Worlds for API: ML5 (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
ML5 (r1) Yes P5, ML5 No 10 Worlds Starter Worlds
ML5 image recogn...
116 runs ♦ 0 likes
By Starter user  
Created: 10 Jun 2021
Modified: 17 Sep 2023
Demo of image recognition using ML5 and MobileNet. Image URL is hardcoded.
Starter Worlds for API: Canvas (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Canvas (r2) Yes None No 12 Worlds Starter Worlds
Plain canvas web...
81 runs ♦ 0 likes
By Starter user  
Created: 1 Sep 2018
Modified: 17 Sep 2023
Example of porting webgl World (almost) unchanged to AB using plain canvas API
Plain canvas web...
99 runs ♦ 0 likes
By Starter user  
Created: 1 Sep 2018
Modified: 13 Nov 2023
Example of porting webgl World (almost) unchanged to AB using plain canvas API
Starter Worlds for API: Webpage (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Webpage (r2) No None No 1523 Worlds Starter Worlds
Password Websock...
43 runs ♦ 0 likes
By Starter user  
Created: 14 Nov 2022
Modified: 17 Sep 2023
Password only Websocket world (web page version). Need to enter password. Only join with users w...
Test Websockets
301 runs ♦ 0 likes
By Starter user  
Created: 14 Nov 2022
Modified: 17 Sep 2023
Test if Websocket server is up
Websocket buttons
233 runs ♦ 0 likes
By Starter user  
Created: 29 Feb 2020
Modified: 17 Sep 2023
Demo of Ancient Brain Websockets functionality. Run on multiple devices. Simple page uses button...
Flickr World
226 runs ♦ 0 likes
By Starter user  
Created: 12 Aug 2018
Modified: 6 Oct 2025
Demo of "Web page" API. Just use JS to make a web page. This page gets images from Flickr using ...
Websocket chat
1071 runs ♦ 0 likes
By Starter user  
Created: 29 Feb 2020
Modified: 17 Sep 2023
Demo of Ancient Brain Websockets functionality. Run on multiple devices. Chat from one to the other.
Chat with GPT model
1628 runs ♦ 4 likes
By Starter user  
Created: 18 Sep 2023
Modified: 3 Oct 2023
JavaScript page to chat with a GPT model. Calls OpenAI API. User needs to enter API key.
Starter Worlds for API: Webpage (Module) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Webpage (Module) (r1) No None No 44 Worlds None

No Starter Worlds found.

Starter Worlds for API: Python (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Python (r1) No None No 10 Worlds Starter Worlds
Python demo (cus...
44 runs ♦ 0 likes
By Starter user  
Created: 1 Oct 2025
Modified: 15 Oct 2025
Python World, allowing JS also. Python and JS both in JS editor. Python 'print' function can eit...
Starter Worlds for API: Python (pure) (mini) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Python (pure) (mini) (r1) No None No 14 Worlds Starter Worlds
Pure Python (min...
29 runs ♦ 0 likes
By Starter user  
Created: 6 Oct 2025
Modified: 15 Oct 2025
Code is Python only (no JS). Uses the fast PyScript compiler. Python 'print' outputs to page.
Starter Worlds for API: Python (pure) (full) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Python (pure) (full) (r1) No None No 7 Worlds Starter Worlds
Pure Python (ful...
4 runs ♦ 0 likes
By Starter user  
Created: 15 Oct 2025
Modified: 15 Oct 2025
Code is Python only (no JS). Uses the full PyScript compiler. Python 'print' outputs to page.
Starter Worlds for API: TypeScript (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
TypeScript (r1) No None No 10 Worlds Starter Worlds
TypeScript demo ...
6 runs ♦ 0 likes
By Starter user  
Created: 15 Oct 2025
Modified: 15 Oct 2025
TypeScript combined with the JS that compiles it.
Starter Worlds for API: TypeScript (pure) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
TypeScript (pure) (r1) No None No 9 Worlds Starter Worlds
Pure TypeScript demo
8 runs ♦ 0 likes
By Starter user  
Created: 15 Oct 2025
Modified: 15 Oct 2025
TypeScript only code. The API will compile it and run it.
Starter Worlds for API: Three (AB) (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (AB) (r2) Yes Three.js Yes 560 Worlds None

No Starter Worlds found.

Starter Worlds for API: Three (AB) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (AB) (r1) Yes Three.js Yes 1282 Worlds None

No Starter Worlds found.

Starter Worlds for API: Physics (AB) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Physics (AB) (r1) Yes Three.js, Physijs Yes 228 Worlds Starter Worlds
Collision World
1635 runs ♦ 4 likes
By Starter user  
Created: 21 Sep 2017
Modified: 17 Sep 2023
Demo of Physics API. Blocks fall under gravity and collide. Can modify gravity, friction, etc. S...
Bouncy Balls
581 runs ♦ 3 likes
By Starter user  
Created: 1 Oct 2017
Modified: 17 Sep 2023
Demo of Physics API. Balls bounce under gravity and collide in low friction world. Splash screen...
Infinite World O...
104 runs ♦ 0 likes
By Enhanced  
Created: 16 Aug 2018
Modified: 17 Sep 2023
Here is a code to get an infinite world that loop without object in it, without the sun
Infinite World G...
151 runs ♦ 0 likes
By Enhanced  
Created: 16 Aug 2018
Modified: 17 Sep 2023
Here is a code to get an infinite world that loop without object in it, and with the sun
First Person Con...
230 runs ♦ 0 likes
By Enhanced  
Created: 21 Jun 2018
Modified: 17 Sep 2023
First person view with mouse controls. Use WASD or Arrows to move, mouse to look around and spac...
Starter Worlds for API: P5 (AB) (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
P5 (AB) (r2) Yes P5 Yes 9 Worlds None

No Starter Worlds found.

Starter Worlds for API: P5 (AB) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
P5 (AB) (r1) Yes P5 Yes 60 Worlds Starter Worlds
Scare the Fishes!
230 runs ♦ 2 likes
By Enhanced  
Created: 2 Aug 2018
Modified: 17 Sep 2023
Scare the fishes with your mouse ! If you click they will flee even further away. Includes twea...
The Game of Life
900 runs ♦ 0 likes
By Enhanced  
Created: 9 Jul 2018
Modified: 17 Sep 2023
The famous Game of Life. Click on the screen to place the initial cells and then click start ! ...
Starter Worlds for API: Canvas (AB) (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Canvas (AB) (r1) Yes None Yes 76 Worlds Starter Worlds
CELLS WITH MIND ...
143 runs ♦ 1 like
By Enhanced  
Created: 10 Jul 2018
Modified: 17 Sep 2023
Cells is a game about cells trying to infect each other. It offers a playground for minds to com...
CELLS WITH MIND ...
185 runs ♦ 0 likes
By Enhanced  
Created: 10 Jul 2018
Modified: 17 Sep 2023
Cells is a game about cells trying to infect each other. It offers a playground for minds to com...
Cells
187 runs ♦ 0 likes
By Enhanced  
Created: 27 Jun 2018
Modified: 17 Sep 2023
'Cells' is an animation that displays 4 team of cells trying to infect each other, until total d...
Starter Worlds for API: Three (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (r2) Yes Three.js No 37 Worlds Starter Worlds
Plain Three.js World
108 runs ♦ 0 likes
By Starter user  
Created: 1 Sep 2018
Modified: 17 Sep 2023
Example of plain Three.js API. Porting a World unchanged. From github.com/mrdoob
3D for Kids Worl...
191 runs ♦ 0 likes
By Starter user  
Created: 1 Sep 2018
Modified: 17 Sep 2023
Example of plain Three.js API. Porting a World unchanged. From "3D Game Programming for Kids"
Starter Worlds for API: Three (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Three (r1) Yes Three.js No 2 Worlds None

No Starter Worlds found.

Starter Worlds for API: Physics (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Physics (r1) Yes Three.js, Physijs No 9 Worlds Starter Worlds
Purple Fruit Monster
213 runs ♦ 1 like
By Starter user  
Created: 1 Sep 2018
Modified: 17 Sep 2023
Example of porting physics World unchanged to AB using plain physics API. From "3D Game Programm...
Starter Worlds for API: P5 (r2)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
P5 (r2) Yes P5 No 621 Worlds None

No Starter Worlds found.

Starter Worlds for API: P5 (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
P5 (r1) Yes P5 No 5195 Worlds Starter Worlds
Tutorial 7.8 variant
393 runs ♦ 0 likes
By "Coding Train" p...  
Created: 6 Sep 2018
Modified: 17 Sep 2023
Tutorial 7.8 with music and other uploaded images, including from other users. Click on the images.
Tutorial 18.4
115 runs ♦ 0 likes
By "Coding Train" p...  
Created: 9 Sep 2018
Modified: 17 Sep 2023
Texture
Tutorial 18.7
437 runs ♦ 0 likes
By "Coding Train" p...  
Created: 9 Sep 2018
Modified: 17 Sep 2023
Tutorial 18.7 with full canvas, resized model, sound. Texture on box is image from another user.
Tutorial 2.1
614 runs ♦ 1 like
By "Coding Train" p...  
Created: 4 Sep 2018
Modified: 17 Sep 2023
Variables in p5.js (mouseX, mouseY)
Tutorial 7.8
113 runs ♦ 1 like
By "Coding Train" p...  
Created: 5 Sep 2018
Modified: 17 Sep 2023
Objects and Images. On Ancient Brain you can upload your own images. Try it!
Starter Worlds for API: Canvas (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Canvas (r1) Yes None No 9 Worlds None

No Starter Worlds found.

Starter Worlds for API: Webpage (r1)

API Uses canvas Graphics libraries AB framework Worlds using this API Starter Worlds
Webpage (r1) No None No 198 Worlds None

No Starter Worlds found.

The background is a program, showing the JavaScript graphics used on this site.
The globes light up when you log in.
 
Font:

Users retain ownership of user content.

Platforms      Stats      The name      Terms and conditions

Call for partners      Contact

Call for partners!
Ancient Brain is looking for a partner to co-write a JavaScript or Python coding book for schools, to be used worldwide. This would be a course for students in learning to code from scratch. The book and course will be integrated into the Ancient Brain site. This is an opportunity for someone looking to develop a course and textbook to partner with a site to promote it. Read more.