Bruno Simon by Bruno Simon

Become a Three.js developer

Everything you need in one place:

91 hours of video to go from absolute beginner to advanced Three.js developer.

Student hat
37,409 Students already enrolled and they love it
Get good at Three.js with only one course

Joining Three.js Journey will give you lifetime access to a complete and easy to access course with 66 lessons.

Want to see what's included? Check out the video down below:

hours of videos
Bruno Simon talking about the course

Each lesson begins with a starter folder to download.
Then, simply follow the tutorial!

If you don't like videos, each lesson is also available as text with screenshots, video previews, snippets with syntax coloration, etc.

Plus, you can slow down or speed up the videos!

What will you learn?

The course is complete, yet accessible for beginners. We will start by discovering what WebGL is and why using the Three.js library is a must. We will then discover the various components of Three.js and once the basics are acquired, we will move on to more advanced techniques to display millions of particles, add physics, add interactions, create a galaxy, animate a raging sea, etc.

At the end of the course, you will have a deep understanding of Three.js and enough experience to start your own projects.

As a bonus, we will also learn how to use the 3D software Blender to be able to create our own models.

3D Telescope illustration

Classic techniques

Illuminate your scene with various lights, start practicing environment creation and create millions of particles.

6 lessons — 6h 20mn
14 Lights preview 42mn
15 Shadows preview 1h 00mn
16 Haunted House preview 1h 15mn
17 Particles preview 49mn
18 Galaxy Generator preview 1h 08mn
19 Scroll based animation preview 1h 23mn
3D Scanner treadmill illustration


Using Three.js materials is great but creating your own is even better.
Learn the shader language to unleash the true power of WebGL and create stunning experiences!

18 lessons — 26h 24mn
27 Shaders preview 2h 17mn
28 Shader patterns preview 1h 49mn
29 Raging sea preview 1h 15mn
30 Animated galaxy preview 1h 14mn
31 Modified materials preview 51mn
32 Coffee Smoke preview new 1h 25mn
33 Hologram preview new 1h 21mn
34 Fireworks preview new 1h 47mn
35 Lights Shading preview new 1h 17mn
36 Raging Sea Shading preview new 57mn
37 Halftone Shading preview new 56mn
38 Earth preview new 1h 40mn
39 Particles Cursor Animation preview new 1h 48mn
40 Particles Morphing preview new 1h 35mn
41 GPGPU Flow Field Particles preview new 2h 22mn
42 Wobbly Sphere preview new 1h 16mn
43 Sliced Model preview new 1h 03mn
44 Procedural Terrain preview new 1h 24mn
3D portal scene illustration

Portal Scene

Learn how to create a cool scene using Blender and discover the baking technique to get the best looking lights and shadows.

4 lessons — 6h 38mn
49 Creating a scene in Blender preview 2h 04mn
50 Baking and exporting the scene preview 2h 11mn
51 Importing and optimizing the scene preview 46mn
52 Adding details to the scene preview 1h 34mn
3D Arcade illustration


Create your first scene and understand fundamentals like cameras, geometries, materials, textures.
Add a debug panel to tweak your environment and animate everything.

13 lessons — 10h 12mn
01 Introduction free 35mn
02 What is WebGL and why use Three.js free 23mn
03 First Three.js Project free 1h 19mn
04 Transform objects preview 46mn
05 Animations preview 30mn
06 Cameras preview 57mn
07 Fullscreen and resizing preview 30mn
08 Geometries preview 35mn
09 Debug UI preview 48mn
10 Textures preview 1h 14mn
11 Materials preview 1h 21mn
12 3D Text preview 44mn
13 Go live free 24mn
3D Drone illustration

Advanced techniques

Add physics to your world so that objects start to collide and stumble. Then import your own model made with Blender and make it look as realistic as possible.

7 lessons — 12h 34mn
20 Physics preview 1h 57mn
21 Imported models preview 1h 07mn
22 Raycaster and Mouse Events preview 1h 07mn
23 Custom models with Blender preview 1h 59mn
24 Environment map preview 1h 49mn
25 Realistic render preview 1h 12mn
26 Code structuring for bigger projects preview 3h 19mn
3D Server illustration


Once you know shaders, it's the opportunity to go even further and try new techniques.
But it's also important to make sure your projects are working on most devices by monitoring and optimising performance.

4 lessons — 4h 37mn
45 Post-processing preview 1h 36mn
46 Performance tips preview 1h 12mn
47 Intro and loading progress preview 49mn
48 Mixing HTML and WebGL preview 58mn
3D React logo with gizmo illustration

React Three Fiber

Did you know that Three.js integrates well in React?
Thanks to React Three Fiber (R3F) you can create awesome Three.js experiences in React with just a few lines of code.

14 lessons — 23h 58mn
53 What are React and React Three Fiber free 25mn
54 First React Application preview 4h 23mn
55 First R3F Application preview 2h 05mn
56 Drei preview 1h 14mn
57 Debug preview 51mn
58 Environment and Staging preview 2h 02mn
59 Load models preview 1h 29mn
60 3D Text preview 59mn
61 Portal Scene preview 41mn
62 Mouse Events preview 47mn
63 Post-processing preview 1h 53mn
64 Fun and Simple Portfolio preview 51mn
65 Physics preview 2h 11mn
66 Create a game preview 4h 01mn
Bruno Simon

Meet Bruno Simon
Hi emoji

Bruno Simon is a French creative developer specialized in WebGL. He has worked on many projects for renowned clients to create interactive 3D experiences accessible to everyone from their browser.

Bruno has been teaching web development and WebGL in various schools for more than 7 years, making him a pedagogical trainer, alternating theory and practice.

Bruno's projects

Is this course for you?

The course is beginner friendly

Geometry illustration
You don't need to have done WebGL or Three.js before.

This training is intended for absolute beginners and will explain the basics before tackling more advanced topics.

Calculator illustration
You don't have to be good at mathematics.

Yes, we're going to do mathematics, but at a simple level and we will explain how it works with drawings and practice slowly.

3D axes illustration
You don't need to know how to use 3D software.

Together we will learn the basics of the 3D software Blender to create a model and import it into our scene.

JavaScript illustration
You don't need to be good at JavaScript.

All you need are JavaScript basics like variables, objects, arrays, loops, functions and events. We will learn the rest together.

Computer illustration
You don't need a crazy ass computer.

In some lessons, we will tackle performance limits, and learn how to handle and optimize our code to get good frame rates.

37,409 Students have joined the course!
Have a look at their works

Discover more

Some professionals talking about the course

Frequently Asked Questions

What are the prerequisites?

Even if the course is beginner friendly, you need to know JavaScript basics like variables, objects, arrays, loops, functions, conditions and events.

The code editor used in the lessons is Visual Studio Code but you can use any editor you like.

The browser used in the lessons is Chrome but you can use any browser you like. However, it is recommended to use one with a good developer tools panel like Chrome or Firefox.

Eventually, you will have to install Blender, but the software is free and works on all major OS.

Can I use Three.js with React?

Yes, thanks to the React Three Fiber renderer, we can write Three.js application directly in React.

And it doesn't stop there. React Three is a huge ecosystem with many tools and features that will improve your developer's life.

It's so big that a whole chapter is dedicated to the topic.

And if you don't know React, the course includes a 4 hours long lesson that will teach you the basics of React.

Is the content up to date?

All the dependencies used throughout the lessons are updated multiple times a year and the content is adjusted accordingly.

New lessons are also regularly added in order to cope with the latest features and to answer community requests.

What if I need help?

With the course, you will also get access to a private Discord server. If you get stuck or you don't understand a specific part of a lesson, you can share your problem to get help.

I don't speak English very well. Will it be a problem?

Although the lessons are in English, they have all been captioned.
For a better comprehension, the technical terms are perfectly written and highlighted.
And if the video is going too fast, you can slow down the pace.

French, Spanish, and Hindi subtitles are available as well.

To test and see how difficult it is for you to follow, all beginnings and some full lessons are available for free.

Finally, all the lessons are available as text right below the video with the exact same content (screenshots, code snippets, video previews, etc.)

Can I offer it?

Yes, you can gift the course to someone else by clicking on this link.

You can pick an option between letting us email the gift to the receiver or you can share the gift yourself.

You'll receive an invoice by email and the recipient won't have access to your billing information.

Can I test the lessons?

The first lessons are free! Have a look and see for yourself if you like the content.

And if it's not enough, the beginning of every other lesson is also free.

What if I don't like the course?

If you are not happy with the course, whatever the reason is, you can ask for a refund at any time by sending an email at

Following the refund, your account will be deleted.

Is there a way to get a discount?

The price of the course has already been calculated to be as low as possible in order to be accessible for everyone and the VAT is included.

You pay only once and get access to all the lessons, a members-only Discord server and upcoming updates!

Still, if it's too expensive for you, discounts might happen at some occasions. Follow @bruno_simon on Twitter to be alerted.

Do I have to do the entire course to start my own project?

No! Once you feel comfortable, you can start working on your personal experiences by yourself. You won't have to wait until the end of the course, but obviously, you will be able to jump back to the course at any time where you left it.

And if you struggle on any project, whether it is personal or professional, the Three.js Journey community will always be happy to help.

Do you provide a certificate of completion?

Yes! Each lesson comes with a quiz. Completing all quizzes will grant you access to a public certificate that you can print or share with the world.

Failing on answering a quiz will result in a few minutes time out, letting you time to find the information before answering again.

Can I ask for a VAT refund?

If your company is in the EU (outside of France), you can ask for a VAT refund.

To do that, after buying the course, go to your account settings and fill the VAT refund request form. Information will be reviewed and proof that you work at the company might be requested.

Can I have an invoice?

Once you've bought the course, you get access to an invoice. You can add any additional data you need on the document.

Start learning now

Only $95 for a 91 hour complete course

Students hat