4.3
Beginner
9h
Updated 2 months ago
HTML5 Canvas: From Noob to Ninja - an interactive deep dive
Learn HTML5 Canvas basics: draw shapes, apply transformations, add animations, and build interactive apps with advanced mouse/keyboard handling to create dynamic web graphics.
Kirupa is an MIT grad who works at Microsoft as Senior Program Manager. He has been tinkering with web technologies since 1998. He works on the Edge browser team where he gets to sink his teeth into the cutting-edge web technologies.
HTML5 is taking over the browsers and one of the coolest things in HTML5 is the canvas - the immediate mode drawing surface you have in HTML for bringing pixels to life using JavaScript. It is used to create games, graphs, and animations.
This is an extensive course with interactive playgrounds (so you don't have to install anything). The course can be divided into four parts.
1. Understand basics of Canvas and compare it with DOM.
2. Learn how to draw shapes.
3. Take a deep dive into canvas transformations and animations.
4. Explore advanced mouse and keyboard handling to create truly interactive applications using canvas.
If none of what I just wrote makes sense, then the content here is just what you need 😀 . Let's get started.
Kirupa is an MIT grad who works at Microsoft as Senior Program Manager. He has been tinkering with web technologies since 1998. ...Show More
Content
1.
DOM vs. Canvas
4 Lessons
Get familiar with using DOM and Canvas for flexible, memory-efficient web visuals.
2.
Getting Started with the Canvas
4 Lessons
Unpack the core of utilizing and drawing on the HTML5 canvas with JavaScript.
3.
Drawing Basics / Lines
4 Lessons
Work your way through drawing basics, understanding canvas mechanics, and utilizing the canvas API.
4.
Drawing Curves
4 Lessons
Grasp the fundamentals of drawing Beziér curves, including quadratic and cubic variations, on the HTML5 Canvas.
5.
Drawing Multiple Things
5 Lessons
Solve problems in managing and rendering multiple shapes on the HTML5 canvas.
6.
Drawing Rectangles (and Squares)
3 Lessons
Tackle drawing rectangles and squares on HTML5 canvas, mastering essential methods.
7.
Drawing Triangles
3 Lessons
Piece together the parts of drawing triangles on the HTML5 canvas with JavaScript.
8.
Drawing Circles
4 Lessons
Step through drawing circles on HTML5 Canvas using the arc function for precision.
9.
Modifying How Your Corners Look
3 Lessons
Get started with customizing corners in HTML5 Canvas using the lineJoin property.
10.
Working with Colors
4 Lessons
Examine different methods for adding vibrant colors and gradients to enhance HTML5 Canvas.
11.
Drawing Text
3 Lessons
Grasp the fundamentals of drawing and customizing text on the HTML5 Canvas.
12.
Drawing Images
6 Lessons
Take a closer look at drawing, displaying, scaling, and slicing images on the HTML5 canvas.
13.
Canvas Transformations
4 Lessons
Simplify complex canvas transformations with methods like translate, scale, and rotate.
14.
Structuring Your Drawing Code
4 Lessons
Master the steps to organize and optimize drawing code for maintainability and reusability.
15.
Animating with requestAnimationFrame
8 Lessons
Learn how to use requestAnimationFrame for optimized and smooth JavaScript animations.
16.
Creating Animations on the Canvas
5 Lessons
Get started with creating dynamic canvas animations using interpolation and JavaScript.
17.
Animating Many Things on the Canvas
3 Lessons
Work your way through animating multiple elements on HTML5 canvas for engaging visuals.
18.
Creating Motion Trails
4 Lessons
Grasp the fundamentals of creating motion trails to enhance animations' realism and liveliness.
19.
Creating Sprite Animations
5 Lessons
Solve problems in creating smooth sprite animations using sprite sheets on the HTML5 canvas.
20.
Working With the Mouse
4 Lessons
Explore managing mouse events and precise positioning for dynamic HTML5 Canvas interactions.
21.
Follow the Mouse Cursor
3 Lessons
Practice using HTML5 Canvas to create dynamic mouse-tracking effects through interactive animation.
22.
Mouse Follow with Ease
3 Lessons
Break down smooth square mouse-following, deceleration, and crucial canvas interaction details.
23.
Working With the Keyboard
6 Lessons
Walk through handling keyboard interactions, event types, properties, and practical examples.
24.
Moving Shapes Using the Keyboard
8 Lessons
Work your way through moving shapes on the canvas using keyboard interactions effectively.
25.
Resizing the HTML Canvas Element
5 Lessons
Break down the steps to properly resize the HTML canvas for accurate content display.
26.
Detect Whether a Font is Installed
4 Lessons
Verify font installation using Canvas API and JavaScript code examples.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Course Author:
Developed by MAANG Engineers
Trusted by 2.8 million developers working at companies
"These are high-quality courses. Trust me the price is worth it for the content quality. Educative came at the right time in my career. I'm understanding topics better than with any book or online video tutorial I've done. Truly made for developers. Thanks"
Anthony Walker
@_webarchitect_
"Just finished my first full #ML course: Machine learning for Software Engineers from Educative, Inc. ... Highly recommend!"
Evan Dunbar
ML Engineer
"You guys are the gold standard of crash-courses... Narrow enough that it doesn't need years of study or a full blown book to get the gist, but broad enough that an afternoon of Googling doesn't cut it."
Software Developer
Carlos Matias La Borde
"I spend my days and nights on Educative. It is indispensable. It is such a unique and reader-friendly site"
Souvik Kundu
Front-end Developer
"Your courses are simply awesome, the depth they go into and the breadth of coverage is so good that I don't have to refer to 10 different websites looking for interview topics and content."
Vinay Krishnaiah
Software Developer
Hands-on Learning Powered by AI
See how Educative uses AI to make your learning more immersive than ever before.
AI Prompt
Code Feedback
Explain with AI
AI Code Mentor
Free Resources