# Awesome Explorables [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sp4ke/awesome-explorables)
A curated list of [Explorable Explanations ](http://worrydream.com/#!/ExplorableExplanations ): resources following the concept of reactive documents and active reading as defined by Bret Victor.
## Contents
- [Math ](#math )
- [Statistics And Probability ](#statistics-and-probability )
- [Linear Algebra ](#linear-algebra )
- [Geometry ](#geometry )
- [Logic ](#logic )
- [Algorithms ](#algorithms )
- [Machine Learning And Neural Networks ](#machine-learning-and-neural-networks )
- [Programming ](#programming )
- [Data Structures ](#data-structures )
- [Science ](#science )
- [Physics ](#physics )
- [Psychology ](#psychology )
- [Systems And Thought Experiments ](#systems-and-thought-experiments )
- [Creativity ](#creativity )
- [Other ](#other )
- [About Explorable Explanations ](#about-explorable-explanations )
- [Tools & Resources ](#tools-and-resources )
- [Books And Essays ](#books-and-essays )
## Math
*[↑ top](#contents)*
* [Explained Visually ](http://setosa.io/ev/ )
* [Image Kernels ](http://setosa.io/ev/image-kernels/ )
* [Pi (π) ](http://setosa.io/ev/pi/ )
* [Exponentiation ](http://setosa.io/ev/exponentiation/ )
* [Better Explained ](https://betterexplained.com ) - Math without endless memorization.
* [Euclid: The Game ](http://euclidthegame.com/ )
* [The Hitchhiker's Guide To The Mandelbrot set ](https://morr.cc/mandelbrot/ )
* [vf.rohanp.xyz ](http://vf.rohanp.xyz/ ) - Interactive demonstration of vector field flow.
* [World of Mathematics ](http://world.mathigon.org/ )
* [Primer on Bézier Curves ](http://pomax.github.io/bezierinfo/ )
* [Math Insight ](http://mathinsight.org/ ) - Copious interactive diagrams and ingenious experiments with digital publishing.
* [Circles Sines and Signals ](http://jackschaedler.github.io/circles-sines-signals/ ) - Compact primer on digital signal processing.
### Statistics And Probability
*[↑ top](#contents)*
* [Conditional Probability ](http://setosa.io/ev/conditional-probability/ )
* [Exploring Histograms ](http://tinlizzie.org/histograms/ )
* [Humans Suck At Entropy ](http://www.loper-os.org/bad-at-entropy/manmach.html )
* [Interpreting Confidence Intervals ](http://rpsychologist.com/d3/CI/ ) - Interpreting Confidence Intervals.
* [Markov Chains ](http://setosa.io/ev/markov-chains/ )
* [Ordinary Least Squares Regression ](http://setosa.io/ev/ordinary-least-squares-regression/ )
* [Principal Component Analysis ](http://setosa.io/ev/principal-component-analysis/ )
* [Probdef ](https://abstractionapplication.itch.io/probdef ) - Open-source game about probability and inference leading up to Bayes Theorem.
* [Seeing Theory ](http://students.brown.edu/seeing-theory/ ) - Visual introduction to probability and statistics.
* [Simpson's Paradox ](http://vudlab.com/simpsons/ )
* [Science Isn't Broken ](https://fivethirtyeight.com/features/science-isnt-broken/#part1 ) - On scientific method (p-values).
* [Years You Have Left to Live, Probably ](http://flowingdata.com/2015/09/23/years-you-have-left-to-live-probably/ ) - Great illustration of survival analysis, and of probabalistic proccesses in general.
### Linear Algebra
*[↑ top](#contents)*
* [Eigenvectors and Eigenvalues ](http://setosa.io/ev/eigenvectors-and-eigenvalues/ )
* [Interactive 2d Matrix ](http://ncase.me/matrix/ )
* [Immersive Math ](http://immersivemath.com/ila/ ) - Linear algebra book with ully interactive figures.
* [Invitation to Another Dimension ](http://maxgoldste.in/invitation-to-another-dimension/ )
### Geometry
*[↑ top](#contents)*
* [How to Fold a Julia Fractal ](http://acko.net/blog/how-to-fold-a-julia-fractal/ ) - Brilliant use of animation to show complex mathematical processes geometrically.
* [Trigonometry ](http://huylenq.com/trigonometry ) - Simple interactive trigonometry.
* [Sine and Cosine ](http://setosa.io/ev/sine-and-cosine/ )
### Logic
*[↑ top](#contents)*
* [The Incredible Proof Machine ](http://incredible.pm/ ) - Visual approach to propositional logic.
## Algorithms
*[↑ top](#contents)*
* [Compression Decompression ](https://unwttng.com/compression-decompressed ) - Or, Making Things Smaller: A Visual Introduction.
* [Visualizing Algorithms ](https://bost.ocks.org/mike/algorithms/ ) - Visualizing algorithms, by mike bostock.
* [visualgo.net ](https://visualgo.net ) - Interactive computer science algorithms and data structures.
* [Quicksort ](https://illustrated-algorithms.now.sh/quicksort ) - The quicksort algorithm, illustrated with playing cards.
* [Second-Order Controls ](https://medium.com/@max_goldstein/second-order-controls-5cee5ddc9d2d )
* [How to Use t-SNE Effectively ](http://distill.pub/2016/misread-tsne/ ) - Visualizing high-dimensional data.
* [Promisees ](http://bevacqua.github.io/promisees/ ) - Promise visualization playground for the adventurous.
* [Back to the Future of Handwriting Recognition ](http://jackschaedler.github.io/handwriting-recognition/ ) - Active Essay Revisiting the GRAIL Handwriting Recognizer.
* [Bloom Filters ](https://www.jasondavies.com/bloomfilter/ )
* [Calculating The Intersection Area of 3+ Circles ](http://www.benfrederickson.com/calculating-the-intersection-of-3-or-more-circles/ )
* [Line-intersection ](http://bl.ocks.org/1wheel/464141fe9b940153e636 ) - Responsive parallel representations for the Bentley– Ottmann algorithm.
* [Split Packing: An Algorithm for Packing Circles with up to Critical Density ](https://morr.cc/split-packing/ )
* [VisuAlgo ](http://visualgo.net/ )
* [Coloring Maps ](http://roadtolarissa.com/blog/2015/01/04/coloring-maps-with-d3/ ) - Transforming numbers into colors.
* [Interactive Diagrams for Wikipedia ](https://classes.soe.ucsc.edu/cmps179/Spring13/#Week9 )
* [Visualizing Map Distortion ](http://bl.ocks.org/enjalot/bd552e711b8325c64729 )
* [Procedural Dungeon Generation: Cellular Automata ](http://blog.jrheard.com/procedural-dungeon-generation-cellular-automata )
### Machine Learning and Neural Networks
*[↑ top](#contents)*
* [r2d3.us ](http://www.r2d3.us/visual-intro-to-machine-learning-part-1/ ) - Visual introduction to machine learning.
* [Visual Interactive Guide To The Basics Of Neural Networks ](https://jalammar.github.io/visual-interactive-guide-basics-neural-networks/ )
* [Neural Networks And Deep Learning ](http://neuralnetworksanddeeplearning.com/ ) - Free online interactive book about Neural Networks and Deep Learning.
* [playground.tensorflow.org ](http://playground.tensorflow.org/ ) - Neural network playground.
* [Attention and Augmented Recurrent Neural Networks ](http://distill.pub/2016/augmented-rnns/ )
* [Four Experiments in Handwriting with a Neural Network ](http://distill.pub/2016/handwriting/ )
* [Confounding Variables ](http://bl.ocks.org/jmahabal/raw/8f010c62112dec083b559cb047a51048/ )
### Programming
*[↑ top](#contents)*
* [Red Blob Games ](http://www.redblobgames.com/ ) - Visual and interactive ways of explaining math and computer algorithms.
* [Introduction To A* ](http://www.redblobgames.com/pathfinding/a-star/introduction.html ) – How pathfinding algorithms work, by amit patel.
* [Hexagonal Grids ](http://www.redblobgames.com/grids/hexagons/ ) - Interactive guide on implementing hexagonal grids.
* [Intro To Graph Theory ](http://www.redblobgames.com/pathfinding/grids/graphs.html )
* [Generating Fantasy Maps ](http://mewo2.com/notes/terrain/ ) - Generating fantasy maps, the math behind.
* [gamejolt.com ](http://gamejolt.com/games/the-stranger-loop/10679 ) - Topology, via asteroids, narrated.
* [Interactive Introduction To Quantum Computing ](http://davidbkemp.github.io/QuantumComputingArticle/ )
* [The Book Of Shaders ](https://thebookofshaders.com/ ) - Gentle step-by-step guide to fragment shaders.
* [What is code? ](http://www.bloomberg.com/graphics/2015-paul-ford-what-is-code/ )
* [Algojammer ](https://github.com/ChrisKnott/Algojammer ) - An experimental code editor for writing algorithms
### Data Structures
*[↑ top](#contents)*
* [Quadtree ](http://jimkang.com/quadtreevis/ ) - Interactive explanation of quadtrees, by jim kang.
* [Bitcoin Blockchain ](https://anders.com/blockchain/ ) - The basics behind decentralized cryptocurrencies like bitcoin.
## Science
*[↑ top](#contents)*
* [ncase.me ](http://ncase.me/simulating/ ) - Simulating the world (in emoji😘).
* [ncase.me ](http://ncase.me/neurons/ ) - Neurotic neurons, an interactive animation on how exposure therapy works.
* [Exploring Emergence ](http://www.playfulinvention.com/emergence/index.html ) - Introduction to cellular automata (from 1996! requires flash).
* [internet-atlas.net ](http://internet-atlas.net/ ) - Critical atlas of internet.
* [Visualizing Projections ](http://shaunlebron.github.io/visualizing-projections/ ) - Visualizing multiple camera projection techniques.
* [Entropy Explained, With Sheep ](https://aatishb.github.io/entropy/ )
* [Pink Trombone ](http://dood.al/pinktrombone/ ) - Hands-On Vocal Tract Simulation.
## Physics
*[↑ top](#contents)*
* [Angry Physics ](http://ncase.me/birds/ )
* [arogozhnikov.github.io ](https://arogozhnikov.github.io/2016/12/19/markov_chain_monte_carlo.html ) - Hamiltonian monte carlo explained.
* [Inside Einstein's head ](https://www.lucify.com/inside-einsteins-head/ ) - Explorable explanation of relativistic spacetime, inspired by Albert Einstein's thought experiments.
* [Interactive Introduction To Optical Modulation ](https://shapescience.xyz/blog/interactive-introduction-to-optical-modulation/ )
* [Nukemap ](http://nuclearsecrecy.com/nukemap/ ) - Nuclear explosion simulation tool by alex wellerstein.
* [PhET Home Page ](https://phet.colorado.edu/ ) - Interactive math and science simulations, based on extensive education research.
* [Physics Simulations ](https://www.myphysicslab.com/ ) - Physics simulations which show how the math is derived.
* [Waveforms ](https://pudding.cool/2018/02/waveforms/ ) - Let's Learn About Waveforms.
## Psychology
*[↑ top](#contents)*
* [The Evolution Of Trust ](http://ncase.me/trust/ )
* [Hooked: how slot machines are designed to be addictive ](https://www.theguardian.com/australia-news/datablog/ng-interactive/2017/sep/28/hooked-how-pokies-are-designed-to-be-addictive ).
* [How Uber Uses Psychological Tricks to Push Its Drivers’ Buttons ](https://www.nytimes.com/interactive/2017/04/02/technology/uber-drivers-psychological-tricks.html?_r=0 )
## Systems And Thought Experiments
*[↑ top](#contents)*
* [Complexity Explorables ](http://rocs.hu-berlin.de/explorables/explorables/ ) - Collection of interactive explorable explanations of complex systems in many fields.
* [Many Tiny Things ](https://manytinythings.github.io/ ) - Every big thing in the world is made up of many tiny things.
* [To Build A Better Ballot ](http://ncase.me/ballot/ ) - an interactive guide to alternative voting systems
* [Parable Of the Polygons ](http://ncase.me/polygons/ ) - Simulation about segregation and diversity.
* [Who’ ll Freeze First ? ](http://noticing.co/on-size-and-warmth/ ) - Puzzle about size and staying warm.
## Creativity
*[↑ top](#contents)*
* [Joy.js ](http://ncase.me/joy-demo/ ) - Make happy little programs.
* [Recursive Drawing ](http://recursivedrawing.com/ ) - Create complex patterns from simple building blocks, by toby schachman.
## Other
*[↑ top](#contents)*
* [Ishkur's Guide To Electronic Music ](http://techno.org/electronic-music-guide/ )
* [Learn Music ](https://learningmusic.ableton.com/ ) - Experiment with beats, melody, harmony, basslines, and song structure.
* [kevinhayeswilson.com ](https://kevinhayeswilson.com/redraw/ ) - Redraw state boundaries with 2016 US election data.
* [Kern Type ](http://type.method.ac/ ) - Explorable on kerning in typography.
* [How Does Inequality Begin ? ](https://en.yaronshemesh.com/inequality/ ) - Interactive simulation.
* [Virus, The Beauty Of The Beast ](http://viruspatterns.com/ )
## About Explorable Explanations
*[↑ top](#contents)*
* [Explorable Explanations ](http://explorableexplanations.com )
* [worrydream.com ](http://worrydream.com/ScientificCommunicationAsSequentialArt/ ) - Scientific Communication As Sequential Art.
* [worrydream.com ](http://worrydream.com/LadderOfAbstraction/ ) - Up and down the ladder of abstraction – a systemic approach to interactive visualization.
* [worrydream.com ](http://worrydream.com/ExplorableExplanations/ ) - Bret Victor's essay which coined the term "explorable explanations".
* [Reinventing Explanation ](http://michaelnielsen.org/reinventing_explanation/ ) - Prototyping an accessible explanation of simpson's paradox.
* [blog.ncase.me ](http://blog.ncase.me/explorable-explanations/ ) - Design patterns for explorable explanations.
* [simblob.blogspot.de ](http://simblob.blogspot.de/2016/12/five-year-mission.html ) - Amit patel of red blob games looks back on 5 years of creating interactive explanations.
* [Learning By Doing ](http://blog.ncase.me/i-do-and-i-understand/ )
## Tools And Resources
*[↑ top](#contents)*
* [Explorabl.es ](http://explorabl.es/ ) - Hub for learning through play!
* [aprt.us ](http://aprt.us/ ) - Open-source graphics editor and programming environment for creating interactive diagrams.
* [awesome-livecoding ](https://github.com/lvm/awesome-livecoding ) - Curated list of live-coding resources.
* [Coeffects ](http://tomasp.net/coeffects/ ) - Context-aware programming languages.
* [DynamicLand ](https://dynamicland.org/ ) - Incubating a humane dynamic medium.
* [Flex - YC Research ](https://harc.ycr.org/flex/ ) - Interactive programming and solution exploration tools
* [Ohm ](https://github.com/harc/ohm ) - Visual parser generator and toolkit for building interpreters and compilers.
* [Chorus ](http://www.chorus-home.org ) - Visual mobile programming using spreadsheet concepts
* [GeoGebra ](https://www.geogebra.org/materials/ ) - Dynamic mathematics for learning and teaching.
* [Human Advancement Research Community - YC Research ](https://harc.ycr.org )
* [How I Make Explorable Explanations ](http://blog.ncase.me/how-i-make-an-explorable-explanation/ ) - By Nicky Case.
* [Implementing Draggable Handles ](http://simblob.blogspot.nl/2014/09/implementing-draggable-handles.html )
* [Improv.js] (http://ncase.me/improv-wip/) - Tool to make explorable explanations.
* [Data-driven Web Applications ](mimno.infosci.cornell.edu/info3300/ )
* [Idyll ](http://idyll-lang.org/ ) - Tool for making interactive narratives for the web.
* [Lively Kernel ](http://lively-kernel.org )
* [Loopy ](http://ncase.me/loopy/ ) - Tool for thinking in systems.
* [Tangle ](http://worrydream.com/Tangle/ ) Js Library for reactive documents.
* [TangleDown] (http://bollwyvl.github.io/TangleDown/)
* [Outside the box ](http://simblob.blogspot.nl/2016/10/outside-box.html ) On SVG and Arrows.
* [RedBlobGames - Making Of ](simblob.blogspot.nl/search/label/making-of )
* [Self-Lang ](http://www.selflanguage.org ) Prototype-based dynamic object-oriented programming language, environment, and virtual machine.
## Books And Essays
*[↑ top](#contents)*
* [Mindstorms ](http://mindstorms.media.mit.edu/ ) - "mindstorms: children, computers, and powerful ideas", an influential 1980 book by seymour papert
* [Elements of Euclid ](https://archive.org/details/firstsixbooksofe00eucl ) - oliver byrne's edition of euclid's "elements" uses colored diagrams and symbols instead of letters to proof theorems about math and geometry
* [Envisioning Information ](http://www.edwardtufte.com/tufte/books_ei )
* [Understanding Comics ](http://scottmccloud.com/2-print/1-uc/ ) - "The pedagogical potential of the comic form is vast and mostly untapped" —Bret Victor
* [Topological Picturebook ](http://www.amazon.com/Topological-Picturebook-George-K-Francis/dp/0387345426 )
* [Dynamics, the Geometry of Behavior ](http://www.aerialpress.com/DYN/ )
* [Proofs without Words ](http://www.amazon.com/Proofs-without-Words-Exercises-Classroom/dp/0883857006 )
* [Relativity Visualized ](http://www.amazon.com/Relativity-Visualized-Lewis-Carroll-Epstein/dp/093521805X )
* [The Shape of Space ](http://www.amazon.com/Shape-Space-Chapman-Applied-Mathematics/dp/0824707095 )
* [Visual Group Theory ](http://web.bentley.edu/empl/c/ncarter/vgt/ )
* [Environment and Economy ](http://blog.ncase.me/environment-economy/ ) - Interactive guide to the eco-pragmatist philosophy.
## Contributing
You are welcome to create a PR to contribute.
Please take a a look at the [contribution guidelines ](https://github.com/sp4ke/awesome-explorables/blob/master/contributing.md ) and [code of conduct ](https://github.com/sp4ke/awesome-explorables/blob/master/code-of-conduct.md ).
#### *If you see a link or a project that is broken or no longer working, please submit a pull request to improve this file. Thank you !*
## Community
* Visit the [Explorabl.es ](http://explorabl.es/ ) hub.
* Or join the subreddit on [/r/explorables ](https://www.reddit.com/r/explorables/ ).
## License
[![CC0 ](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg )](https://creativecommons.org/publicdomain/zero/1.0/)
To the extent possible under law, Chakib Benziane has waived all copyright and related or neighboring rights to this work.