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.yml and _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.py from 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 .html path keeps working;
    • one self-contained HTML file per visualization;
    • the Jekyll + Minimal Mistakes + GitHub Pages build pipeline;
    • Gitalk discussions on each page.
  • 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 clientSecret in index.html and index_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); repository tthtlc/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.