Drag the background!

Ancient Brain
Code. Play. Teach. Learn. Research. Demo.

Our goal: To become one of the most fun places in the world to code.

26 countries    1,927 coders    7,569 worlds    414,764 runs    2.7 million lines of code    Update stats

Zombie Death Baby
716 runs ♦ 1 like
By Starter user  
Created: 11 Jun 2018
Modified: 4 Jul 2021
How to make a fun touch game for mobile. Touch drag and tap objects. Mouse drag and click object...
Ammo physics demo
94 runs ♦ 0 likes
By Starter user  
Created: 19 Apr 2021
Modified: 19 Apr 2021
Port of "ammo / instancing" from Three.js examples
Looney Tunes Cha...
1411 runs ♦ 2 likes
By Sean Sinnott  
Created: 16 Nov 2016
Modified: 10 Feb 2018
Stack (Multiplayer)
498 runs ♦ 1 like
By Alexandru  
Created: 6 Dec 2022
Modified: 6 Dec 2022
An online coding platform

Ancient Brain is an online coding and hosting platform for everyone.
See Intro and List of features.


Coders: Make 3D worlds and share them with friends. Clone and edit other people's worlds. Make touch mobile games. Embed your worlds on other sites.
Teachers: Run courses in coding and coding for kids and AI coding. Run programming practicals in 3D or 2D or text, with many features designed for teachers. Safely edit and run student code.
Learners: Do courses in coding and coding for kids and AI coding. Clone other people's worlds and change one or two lines. What's the worst that could happen?
Gamers: Play the endless game worlds the coders make. Come and browse an ever-growing archive of games.
Researchers: Upload problems, tender for solutions, test and rank them. Make hybrid AI systems from the code of multiple authors.
Enough talk. Show me a video!

OK, here is a high-level introduction.
This does not assume you have ever coded, or ever heard of JavaScript graphics (what is behind this site).

How to code
You can "run" any of the 7,569 programs or "Worlds" by clicking on them. But this is also a coding site, where you can code your own Worlds. You can use this site to learn to code. Or show off your creations if you are an experienced coder.
Click below to learn how to code on this site. Basically, there is a choice of "libraries" that you can use. Skip the intro, let us decide the library, and go straight to the starter tutorial (with videos):
Programming course

Ancient Brain has a course in how to program from scratch.
You will get to make "Worlds" like the following. Click on them to run them.

Tutorial 2.5
133 runs ♦ 1 like
By "Coding Train" p...  
Created: 4 Sep 2018
Modified: 4 Sep 2018
The random() Function
Tutorial 2.1
483 runs ♦ 1 like
By "Coding Train" p...  
Created: 4 Sep 2018
Modified: 4 Sep 2018
Variables in p5.js (mouseX, mouseY)
Tutorial 7.3
201 runs ♦ 0 likes
By "Coding Train" p...  
Created: 5 Sep 2018
Modified: 5 Sep 2018
Arrays of Objects
Tutorial 7.8 variant
335 runs ♦ 0 likes
By "Coding Train" p...  
Created: 6 Sep 2018
Modified: 11 Sep 2018
Tutorial 7.8 with music and other uploaded images, including from other users. Click on the images.
AI course

Ancient Brain has a set of AI programming exercises, with videos and notes. For use in any AI course.
You will get to modify "Worlds" like the following. Click on them to run them.

Character recogn...
1542 runs ♦ 0 likes
By "Coding Train" p...  
Created: 5 Jul 2019
Modified: 2 Jul 2021
Neural network to do character recognition from image database and from handwriting in real-time.
A star
3004 runs ♦ 1 like
By "Coding Train" p...  
Created: 1 May 2019
Modified: 21 Oct 2022
"A Star" algorithm to find shortest path through maze.
Breadth-first se...
1824 runs ♦ 0 likes
By "Coding Train" p...  
Created: 30 Apr 2019
Modified: 15 Dec 2019
Breadth-first search with a Force-directed graph.
GA (Finnegans Wake)
806 runs ♦ 0 likes
By "Coding Train" p...  
Created: 2 May 2019
Modified: 15 Dec 2019
Genetic Algorithm to write the first line of Finnegans Wake.
WebGL course

Ancient Brain has a short course in JavaScript 3D graphics ("WebGL") programming.
You will get to make "Worlds" like the following. Click on them to run them.

Tutorial 18.5
84 runs ♦ 0 likes
By "Coding Train" p...  
Created: 9 Sep 2018
Modified: 2 Jun 2019
Camera and Perspective
Tutorial 18.7
375 runs ♦ 0 likes
By "Coding Train" p...  
Created: 9 Sep 2018
Modified: 11 Sep 2018
Tutorial 18.7 with full canvas, resized model, sound. Texture on box is image from another user.
Tutorial 18.3
56 runs ♦ 0 likes
By "Coding Train" p...  
Created: 9 Sep 2018
Modified: 9 Sep 2018
Light and Material
Tutorial 18.8
78 runs ♦ 0 likes
By "Coding Train" p...  
Created: 9 Sep 2018
Modified: 9 Sep 2018
3D Custom Shapes
Starter Worlds for Three.js

These are the main "Starter Worlds" that use the Three.js library (which tends to give the most advanced graphics).

You can Clone and Edit all of these and change their code. Look for a section at the top called the "Tweaker's Box". This contains the easiest things to change.

One Cube World (...
1041 runs ♦ 2 likes
By Starter user  
Created: 11 Apr 2018
Modified: 21 Apr 2021
Simple starter World (Three.js version). Built-in camera control.
Model World
822 runs ♦ 2 likes
By Starter user  
Created: 8 Nov 2016
Modified: 18 Apr 2021
Demo of how to insert 3d models into World. Mind-controlled agent, actively-pursuing enemy. Skybox.
Castle World
754 runs ♦ 4 likes
By Starter user  
Created: 11 Nov 2016
Modified: 4 Jul 2021
Demo of how to insert 3d model into World. Mind-controlled agent, actively-pursuing enemy. Splas...
Websockets boxes
761 runs ♦ 0 likes
By Starter user  
Created: 29 Feb 2020
Modified: 14 Nov 2022
Demo of Websockets in 3D World. Click to change the boxes on the other user's machine, while the...
Password Websock...
54 runs ♦ 0 likes
By Starter user  
Created: 14 Nov 2022
Modified: 15 Nov 2022
Password version of "Websockets boxes"
Touch World
424 runs ♦ 1 like
By Starter user  
Created: 6 Jan 2018
Modified: 18 Apr 2021
How to override default touch handling. Mobile: Touch drag moves agent, touch pinch zooms camera...
Complex World
7389 runs ♦ 3 likes
By Starter user  
Created: 1 Oct 2016
Modified: 18 Apr 2021
World with a Mind-controlled agent, actively-pursuing enemy, random maze, skybox, music.
Blank Three.js World
1330 runs ♦ 2 likes
By Starter user  
Created: 20 Nov 2016
Modified: 18 Apr 2021
A simple starter World. An Array of spheres. Painted with textures. Random motion.
MineCraft
1009 runs ♦ 2 likes
By Starter user  
Created: 27 Nov 2016
Modified: 4 Jul 2021
Use keyboard to draw blocks like in MineCraft. Use arrow keys and PgUp, PgDn to draw. Can save w...
Simple World
1511 runs ♦ 2 likes
By Starter user  
Created: 1 Oct 2016
Modified: 18 Apr 2021
Simple World with a Mind-controlled agent, randomly-moving enemy, paint blocks with texture.
Zombie Death Baby
716 runs ♦ 1 like
By Starter user  
Created: 11 Jun 2018
Modified: 4 Jul 2021
How to make a fun touch game for mobile. Touch drag and tap objects. Mouse drag and click object...
User-controlled ...
804 runs ♦ 2 likes
By Starter user  
Created: 12 Feb 2017
Modified: 18 Apr 2021
3d model World. User controlled on desktop. Keyboard arrows to move. Switch to "Move with" camer...
Random Worlds

Here are some random Worlds that have had more than 30 runs. Reload for more.

Evade the Dog
225 runs ♦ 0 likes
By Ellen Kennedy  
Created: 21 Nov 2016
Modified: 10 Feb 2018
Paint By Blocks ...
238 runs ♦ 0 likes
By Vanya Cadogan  
Created: 24 Feb 2023
Modified: 5 Mar 2023
Clone of "Paint By Blocks v1 (Three.js)" by Vanya Cadogan
Character recogn...
63 runs ♦ 0 likes
By Sunil Jagtap  
Created: 1 Dec 2021
Modified: 2 Dec 2021
Clone of "Character recognition neural network" by "Coding Train" project
Plant vs Zombie ...
345 runs ♦ 0 likes
By Md Shamsul Abedi...  
Created: 14 Aug 2020
Modified: 22 Aug 2020
A_star Algorithm in 3D Visualization
AI Assignment- w...
134 runs ♦ 0 likes
By robby  
Created: 16 Nov 2021
Modified: 5 Dec 2021
Trap oggy(agent) by usings roaches(enemy) using A* in hole
Practical A* Mov...
372 runs ♦ 0 likes
By Rajasi  
Created: 11 Nov 2022
Modified: 4 Dec 2022
A* Complex world 2
webgl decals
154 runs ♦ 0 likes
By threejs.org port...  
Created: 8 Sep 2021
Modified: 8 Sep 2021
this world shows how to put different planes to make a 3d model of a person. Can be painted by c...
Crop Image for T...
531 runs ♦ 0 likes
By jianyu  
Created: 4 Dec 2020
Modified: 13 Dec 2020
to create similar between trainning image and predicte image
Complex World-II...
132 runs ♦ 0 likes
By Aparna  
Created: 8 Nov 2022
Modified: 6 Dec 2022
Clone of "Complex World" by Starter user
Binary tree (clo...
66 runs ♦ 0 likes
By Mustafa Kamal  
Created: 4 Oct 2022
Modified: 4 Oct 2022
Clone of "Binary tree" by "Coding Train" project


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 partners. In particular, we seek a partner in writing a JavaScript coding book for schools, to be used worldwide. We will integrate your course 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.