# Awesome Educational Games

[<img src="https://cloud.githubusercontent.com/assets/499192/18659925/ed7e6262-7f0d-11e6-8e8e-b53b87158210.png" align="right" alt="Awesome Educational Games" width="150">](https://en.m.wikipedia.org/wiki/Educational_game)

> A curated list of awesome [educational games](https://en.m.wikipedia.org/wiki/Educational_game) to learn editors, languages, programming, etc.

*Please read the [contribution guidelines](CONTRIBUTING.md) before contributing.*

> [Educational games](https://en.m.wikipedia.org/wiki/Educational_game) are designed to teach people about certain subjects, expand concepts, reinforce development, understand an historical event or culture, or assist them in learning a skill as they play - [Wikipedia](https://en.m.wikipedia.org/wiki/Educational_game)

#### Contents

- [Art & Design](#art--design)
- [Articles](#articles)
- [CSS](#css)
- [Editors](#editors)
- [Languages](#languages)
- [Math & Computer Science](#math--computer-science)
- [Music](#music)
- [Programming](#programming)

## Art & Design

- [Canon Explains Exposure](http://www.canonoutsideofauto.ca/) - Learn how to give your photographs just the right amount of light.
- [Can't Unsee](https://cantunsee.space/) - A game where your attention to details earns you a lot of coins.
- [Font Memory Game](https://betterwebtype.com/font-memory-game) - Recognizing different styles of fonts is one of the most challenging parts of typography.
- [Method of Action](https://method.ac/) - A collection of games that teach you design principles.
  - [The Bézier Game](https://bezier.method.ac/) - Bézier Curves
  - [Color](https://color.method.ac/) - Color
  - [Shape Type](https://shape.method.ac/) - Letter Shaping
  - [Kern Type](https://type.method.ac/) - Kerning
- [Pixactly](http://pixact.ly/) - A pixels test to quiz your knowledge.
- [The Boolean Game](https://boolean.method.ac/) - Learn how to use boolean operations in Sketch, Figma, and other vector editors.

## Articles

- [Educational Video Games Can Boost Motivation to Learn](https://www.nyu.edu/about/news-publications/news/2013/november/educational-video-games-can-boost-motivation-to-learn-nyu-cuny-study-shows-.html) - An article by New York University.
- [Fact or Fiction?: Video Games Are the Future of Education](https://www.nyu.edu/about/news-publications/news/2013/november/educational-video-games-can-boost-motivation-to-learn-nyu-cuny-study-shows-.html) - An article by Scientific American.
- [Five Reasons to Use Games in the Classroom](https://www.educationworld.com/a_curr/reasons-to-play-games-in-the-classroom.shtml) - An article by Education World.

## CSS

- [CSS Diner](https://flukeout.github.io/) - It's a little game to help you learn CSS selectors.
- [CSS Grid Garden](http://cssgridgarden.com/) - A game for learning CSS grid layout.
- [Flexbox Defense](http://www.flexboxdefense.com/) - Unlike other tower defense games, you must position your towers using CSS!
- [Flexbox Froggy](http://flexboxfroggy.com/) - A game for learning CSS flexbox.
- [Flexbox with Webflow](https://www.flexboxgame.com/) - Learn and master flexbox in 28 interactive levels—without writing code.

## Editors

- [Open Vim](https://www.openvim.com/) - Interactive Vim tutorial.
- [Vim Adventures](https://vim-adventures.com/) - Learning Vim while playing a game.
- [Vim Genius](http://vimgenius.com/) - Increase your speed and improve your muscle memory with Vim Genius.

## Languages

- [Drops](https://languagedrops.com/) - Learn useful words and phrases in a languge of your choosing, with fun gameplay.
- [Duolingo](https://www.duolingo.com/) - Learn Spanish, French and other languages for free.

## Math & Computer Science

- [Alligator Eggs!](http://worrydream.com/#!/AlligatorEggs) - A pen-and-paper game for children that teaches lambda calculus.
- [CS Unplugged](https://csunplugged.org/en/) - A collection of classroom activities that teach computer science concepts without using computers.
- [Finitris](http://www.postcrashgames.com/finitris/) - See what goes into running a regular expression.
- [Guess The Correlation](http://guessthecorrelation.com/) - Try to guess how correlated the two variables in a scatter plot are.

## Music

- [Learning Music](https://learningmusic.ableton.com) - Explore the fundamentals of music via Ableton's interactive website.
- [Learning Synths](https://learningsynths.ableton.com/) - Learn the basics of using synthesizers (or synths).
- [Pianu](https://pianu.com) - Learn how to play the piano in-browser.

## Programming

- [BOX-256](http://box-256.com/) - Program a fictional CPU with assembly to output graphics.
- [Bashcrawl](https://gitlab.com/slackermedia/bashcrawl) - Learn Linux commands by playing a simple text adventure .
- [Clips the Game](https://md5crypt.github.io/clipsgame/) - A demanding logic game based on the clips rule engine.
- [Code Avengers](https://www.codeavengers.com/) - Learn to build websites, apps and games in a fun and effective way.
- [Code School](https://www.pluralsight.com/codeschool ) - Learn to code in the comfort of your browser.
- [Code.org](https://code.org/) - Every student in every school should have the opportunity to learn computer science.
- [Codecademy](https://www.codecademy.com/) - Learn to code interactively, for free.
- [CodeCombat](https://codecombat.com/) - The most engaging coding game for learning programming.
- [CodinGame](https://www.codingame.com/start) - A challenge-based training platform where you can play with the hottest programming topics.
- [Cube Composer](https://david-peter.de/cube-composer/) - A puzzle game inspired by functional programming.
- [Deadlock Empire](https://deadlockempire.github.io/) - Solve puzzles with concurrency.
- [Free Code Camp](https://www.freecodecamp.org/) - An open source community that helps you learn to code.
- [Learn Git Branching](https://learngitbranching.js.org/) - Interactive Git tutorial that emphasizes branching.
- [Mimo](https://getmimo.com/) - Learn how to become a developer on mobile.
- [Programming Games Wiki](http://programminggames.org/) - A long-standing catalogue of programming games through the years.
- [RegexOne](https://regexone.com/lesson/introduction_abcs) - Learn Regular Expressions with simple, interactive exercises.
- [ReturnTrue](https://alf.nu/ReturnTrue) - A game were you learn about booleans, return true to win.
- [Screeps](https://screeps.com/) - The world's first MMO strategy sandbox game for programmers.
- [SQL Murder Mystery](https://mystery.knightlab.com/) - Solve a crime while practicing database skills.
- [Swift Playgrounds](https://www.apple.com/swift/playgrounds/) - Learn to code on your iPad in a seriously fun way.
- [Untrusted](https://alexnisnevich.github.io/untrusted/) - Learn while playing a JavaScript adventure game.
- [WarriorJS](https://github.com/olistic/warriorjs) - Using JavaScript, program a warrior to climb a tall tower, fight monsters and rescue captives.
- [Web Audio School](https://mmckegg.github.io/web-audio-school/) - Interactive WebAudio tutorials.
- [XSS game](https://xss-game.appspot.com) - A game about tricking people into running code in their browsers.
