Game Time 2024 – Build a JavaScript Game with Random Order
Key Takeaways
Teaches building a JavaScript-based card game with random card ordering mechanics
Original Description
Updated in May 2025.
This course now features Coursera Coach!
A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course.
This course teaches you how to build a JavaScript-based card game with random card ordering mechanics. By the end of the course, you will be able to create a fully functional game, applying key skills like HTML structure, CSS Grid for layout, JavaScript asynchronous programming with async/await, the Fetch API for data retrieval, and the Fisher-Yates shuffle algorithm for randomization. You'll also gain expertise in DOM manipulation, CSS animations, and adding interactive features such as dynamic card flipping and game logic with counters.
The course is divided into six sections. In the first section, you'll learn to write the HTML, style with CSS, and implement CSS Grid for a responsive layout. You'll also explore CSS root variables and best practices for naming conventions. The second section focuses on populating your game board with cards, using JSON to store card data, and integrating JavaScript for dynamic card referencing. You'll also master advanced techniques for efficient DOM updates.
In section three, you’ll implement card flip effects and randomize the card order using the Fisher-Yates shuffle. Section four delves into logic for matching cards, counters, and restricting clicks. The fifth section introduces visual effects like falling stars and a losing image overlay. By the end, you’ll have a polished game ready for testing.
This is an intermediate-level course. Developers with basic HTML, CSS, and JavaScript knowledge who want to skill up will find it helpful.
Watch on External: Coursera ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
More on: JavaScript Fundamentals
View skill →Related Reads
📰
📰
📰
📰
Why Vanilla JS?
In the article below, I am sharing my story of building SaaS product in vanilla js and explaining why I decided to go with this approach.
https://guseyn.com/html/posts/why-vanilla-js.html
Dev.to · Guseyn Ismayylov
How to Create a Cursor Tail Using HTML, CSS, and JavaScript
Medium · JavaScript
I built a landing page with Three.js, vanilla JS, and zero frameworks — here's what I learned
Dev.to · Ayush Shekhar
Part 1: Why I Rarely Use useEffect Anymore (and what I use instead)
Dev.to · Alejandro
🎓
Tutor Explanation
DeepCamp AI