Product
Product
Platform
web
Users
Primary: math learners and educators — students and teachers who use the interactive visualizations to see geometry, curves, fractals, and solids in motion rather than as static textbook figures.
Secondary: the author (tthtlc), who uses the repository as a personal playground and archive for generative-geometry experiments (evidenced by the “To Do” page and many *_explore variants).
Product Purpose
A browsable collection of interactive, animated geometric visualizations — curves, fractals, polygons, spirographs, hypotrochoids, tessellations, and polyhedra — each of which is a working tool the visitor can manipulate (adjustable parameters, animation, and some save-PNG export). The site makes abstract mathematical relationships visible and playable.
Positioning
Interactivity is the core. Every page is a live, parameter-driven visualization, not a static image. The breadth of the collection (~350 self-contained pages) plus the fact that each visualization is a single portable HTML file with no build dependency distinguishes it from textbook illustrations, fixed galleries, or app-bound generators.
Operating Context
- A Jekyll site using the Minimal Mistakes remote theme, deployed on GitHub Pages at
https://tthtlc.github.io. - Shell/index pages (home, gallery, search, todo, discussion, random picks, all) are assembled by Jekyll from
_data/visualizations.ymland_data/visualization_categories.yml. - The ~350 visualizations are self-contained HTML files copied through untouched; they are not themed by Jekyll.
- Categories are generated by
scripts/categorize_visualizations.pyfrom the data file. - Discussion/comments run on Gitalk (GitHub-issues-backed), with a Gitalk block embedded per page.
- Several Markdown pages (
cookie.md,how_to_generate_png.md,geometries.md, etc.) are raw ChatGPT-generated scratch notes documenting one-off requests rather than curated site content.
Capabilities and Constraints
- Hard constraints (never break):
- existing page URLs — every current
.htmlpath keeps working; - one self-contained HTML file per visualization;
- the Jekyll + Minimal Mistakes + GitHub Pages build pipeline;
- Gitalk discussions on each page.
- existing page URLs — every current
- Shared design with minimal duplication (explicit user requirement): any new visual design must be replicable across all ~350 pages with minimal duplication — applied through a shared stylesheet/include layer rather than editing every file individually.
- Visualizations support interactive parameters and animation; some support PNG export via a local PHP generator.
- Terminology: pages are called “visualizations”; the collection is grouped into categories defined in
_data/visualization_categories.yml. - Known issue (unresolved): the Gitalk configuration hardcodes a GitHub OAuth
clientSecretinindex.htmlandindex_discussion.html, exposing it in the public repo. Flagged as a security problem; not yet fixed.
Brand Commitments
- Name: “Mathematical Art”; subtitle “Interactive geometric visualizations”.
- Owner/author:
tthtlc(personal GitHub Pages site); repositorytthtlc/tthtlc.github.io. - Canonical domain:
https://tthtlc.github.io.
Evidence on Hand
- ~350 self-contained visualization HTML files (paths listed in
_data/visualizations.yml). _data/visualization_categories.yml— categories with emoji, names, descriptions, and tags.- No testimonials, case studies, benchmarks, or press exist. Future work must not fabricate them.
Product Principles
- Interactivity over illustration: each visualization must remain a playable, parameter-driven tool.
- Portability: a visualization stays one self-contained HTML file; anything shared lives in a single shared layer to avoid per-file duplication.
- URL stability: every existing path keeps working across any redesign.
- Education-first: the primary lens is a learner or educator understanding a mathematical concept.
- Integrity of the archive: the ~350 existing pages are assets to preserve, not to rewrite destructively.