{"id":2073,"url":"https://github.com/ubavic/awesome-interactive-math","name":"awesome-interactive-math","description":"A curated list of tools that can be used for creating interactive mathematical  explorables.","projects_count":54,"last_synced_at":"2026-07-20T14:00:31.807Z","repository":{"id":37512749,"uuid":"402919628","full_name":"ubavic/awesome-interactive-math","owner":"ubavic","description":"A curated list of tools that can be used for creating interactive mathematical  explorables.","archived":false,"fork":false,"pushed_at":"2026-05-09T15:51:49.000Z","size":44,"stargazers_count":297,"open_issues_count":0,"forks_count":17,"subscribers_count":8,"default_branch":"master","last_synced_at":"2026-07-02T01:02:51.613Z","etag":null,"topics":["awesome-list","explorables","mathematics"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ubavic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-09-03T23:26:08.000Z","updated_at":"2026-07-01T20:14:53.000Z","dependencies_parsed_at":"2026-06-14T15:00:21.654Z","dependency_job_id":null,"html_url":"https://github.com/ubavic/awesome-interactive-math","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ubavic/awesome-interactive-math","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubavic%2Fawesome-interactive-math","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubavic%2Fawesome-interactive-math/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubavic%2Fawesome-interactive-math/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubavic%2Fawesome-interactive-math/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ubavic","download_url":"https://codeload.github.com/ubavic/awesome-interactive-math/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ubavic%2Fawesome-interactive-math/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35688503,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"ssl_error","status_checked_at":"2026-07-20T02:08:09.736Z","response_time":111,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"created_at":"2024-01-04T18:28:01.920Z","updated_at":"2026-07-20T14:00:31.807Z","primary_language":null,"list_of_lists":false,"displayable":true,"categories":["Tools","Examples","Examples of awesome interactive math"],"sub_categories":["Books","Articles","Other awesomeness","Plotters","Math games"],"readme":"# Awesome interactive math\n\nA curated list of tools that can be used for creating interactive mathematical explorables on the web.  See also [explorabl.es list](https://explorabl.es/).\n\n## Tools\n\n - [CindyJS](https://cindyjs.org/) - a framework to create interactive (mathematical) content for the web.\n - [D3.js](https://d3js.org/) - a JavaScript library for manipulating documents based on data.\n - [Desmos API](https://www.desmos.com/api/) - dead-simple way to embed rich, interactive math into your web page or web app.\n - [Euclid JS](https://euclid.js.org/) - Euclidean geometry in javascript.\n - [Geogebra embeded](https://wiki.geogebra.org/en/Embedding_in_Webpages)\n - [Grafar](https://thoughtspile.github.io/grafar/) - a javascript library for reactive, 3D mathematical visualization (data visualization capabilities coming sometime). Built on top of WebGL (via Three.js).\n - [JSXGraph](http://jsxgraph.org/wp/index.html) - a cross-browser JavaScript library for interactive geometry, function plotting, charting, and data visualization in the web browser.\n - [Mafs](https://mafs.dev/) - a set of opinionated React components for creating math visualizations.\n - [MathBox](https://github.com/unconed/mathbox) - a library for rendering presentation-quality math diagrams in a browser using WebGL. Built on top of Three.js and ShaderGraph, it provides a clean API to visualize mathematical relationships and animate them declaratively.\n - [MathCell](https://mathcell.org/) - a simple straightforward way to include interactive mathematics in a web page.\n - [Mathigon](https://mathigon.io/) - open-source TypeScript libraries for creating and hosting interactive courses or virtual manipulatives.\n - [Observable](https://observablehq.com/) - a platform for creating interactive explorables.\n - [p5.js](https://p5js.org/) - a JavaScript library for creative coding, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners...\n - [pts](https://ptsjs.org/) - a library for visualization and creative-coding \n - [Liqvid](https://liqvidjs.org/) - library for interactive videos in React.\n - [SageMath WebGL Renderer](https://doc.sagemath.org/html/en/reference/plot3d/threejs.html)\n - [Shiny](https://shiny.rstudio.com/) - an R package that makes it easy to build interactive web apps straight from R.\n - [three.js](https://threejs.org) - a cross-browser JavaScript library and application programming interface used to create and display animated 3D computer graphics in a web browser using WebGL.\n\n## Examples\n\n### Articles\n\n - [An interactive introduction to Fourier transforms](https://www.jezzamon.com/fourier/index.html) (Jez Swanson)\n - [How to Fold a Julia Fractal](http://acko.net/blog/how-to-fold-a-julia-fractal/) (Steven Wittens)\n - [Let's remove quaternions from every 3D engine](https://marctenbosch.com/quaternions) (Marc ten Bosch)\n - [Interactive tutorial of the sequent calculus](http://logitext.mit.edu/tutorial) (Edward Z. Yang)\n - [Pythagorean theorem](https://setosa.io/pythagorean/) (Victor Powell) and other aricles on [setosa.io](https://setosa.io/)\n - [A primer on Bézier curves](https://pomax.github.io/bezierinfo) (Pomax)\n - [Sphere eversion](https://rreusser.github.io/explorations/sphere-eversion) (Ricky Reusser)\n - [Tesseract](https://ciechanow.ski/tesseract) (Bartosz Ciechanowski)\n - [Visualizing Geodesics on Surfaces](https://analyticphysics.com/General%20Relativity/Visualizing%20Geodesics%20on%20Surfaces.htm) (Paul Masson) and other articles on [analyticphysics.com](https://analyticphysics.com/)\n - [Why Momentum Really Works](https://distill.pub/2017/momentum/), (Gabriel Goh) and other articles on [distill.pub](https://distill.pub/)\n\n### Books\n\n - [Complex analysis](https://complex-analysis.com/), Juan Carlos Ponce Campuzano\n - [Immersive linear algebra](http://immersivemath.com/ila/index.html), J. Ström, K. Åström, and T. Akenine-Möller\n - [Seeing circles, sines and signals](https://jackschaedler.github.io/circles-sines-signals), Jack Schaedler\n\n### Plotters\n\n - [2D Inverse Fourier Transform Playground](https://monman53.github.io/demos/2dfft/), Tetsuro Sakamoto\n - [Complex function plotter](https://www.dynamicmath.xyz/complex/function-plotter/hsv.htm), Juan Carlos Ponce Campuzano\n - [Elliptic curve explorer](https://samuelj.li/elliptic-curve-explorer), Samuel Li\n - [Fourier Cuboid](https://static.laszlokorte.de/fourier/), Laszlo Korte\n - [Interactive projective plane](https://ubavic.rs/work/interactive_projective_plane), Nikola Ubavić\n - [IsoVis](https://rawgit.com/csp256/IsoVis/master/IsoVis.html), Christopher Parker\n\n### Other awesomeness\n\n - [Complexity Explorables](https://www.complexity-explorables.org/), Dirk Brockmann\n - [Polyhedra Viewer](https://polyhedra.tessera.li), Nat Alison\n - [MIT Mathlets](https://mathlets.org/)\n - [MLDemos](https://basilio.dev/), Basilio Noris\n - [Float exposed](https://float.exposed/0x000fffffffffffff), Bartosz Ciechanowski. Also other articles by the author.\n - [7 sets Venn Diagram](https://moebio.com/research/sevensets/), Santiago Ortiz\n\n### Math games\n\nGames marked with a *WEB* can be played in a browser.\n\n - [4D Toys](https://4dtoys.com/) - a box of toys from the fourth dimension.\n - [A Slower Speed of Light](http://gamelab.mit.edu/games/a-slower-speed-of-light/) - a first-person game prototype in which players navigate a 3D space while picking up orbs that reduce the speed of light in increments.\n - [Euclidea](https://www.euclidea.xyz/) - *WEB* - geometric Constructions Game with Straightedge and Compass.\n - [Fragments of Euclid](https://nusan.itch.io/fragments-of-euclid) - a game about exploring and solving puzzle in a mind-bending environment inspired by M.C. Escher.\n - [Hyperbolica](https://store.steampowered.com/app/1256230/Hyperbolica/) - a whimsical Non-Euclidean adventure with mind-bending worlds full of games, puzzles, mazes, and secrets!\n - [HyperRogue](http://www.roguetemple.com/z/hyper/) - tactical puzzle/roguelike on a hyperbolic plane.\n - [Sokyokuban](https://sokyokuban.com/) - *WEB* - Sokoban on a hyperbolic plane.\n - [Snake in the projective plane](https://ubavic.rs/snake/snake.html) - *WEB* - snake played in a fundamental polygon of a real projective plane.\n - [Syncro](https://rawegg.itch.io/syncro) - *WEB* - game challenges logical reasoning by the use of mathematics, conveying a graphical representation of a principle in the Automata Theory. \n - [Turing Complete](https://store.steampowered.com/app/1444480/Turing_Complete/) - Learn CPU architecture with puzzles \n\n#### In development \n\n - [Miegakure](https://miegakure.com/) - a game where you navigate a four-dimensional world to perform miraculous feats and solve puzzles. \n\n## Contribution\n\nFeel free to recommend any awesome tool not listed here.\n","projects_url":"https://awesome.ecosyste.ms/api/v1/lists/ubavic%2Fawesome-interactive-math/projects"}