{"adoption": {"forks": 86, "observed_at": "2026-08-28T04:03:18.218149+00:00", "stars": 1032}, "canonical_url": "https://ross.abutalabs.com/products/terathon-math-library", "card": {"archived": false, "artifact_type": "library", "description": "C++ math library for 2D/3D/4D vector, matrix, quaternion, and geometric algebra.", "domain": ["graphics"], "enriched": true, "function": ["math", "graphics", "simulation"], "health_score": 77, "homepage": "https://projectivegeometricalgebra.org", "language": "C++", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["EricLengyel/Terathon-Math-Library"], "name": "EricLengyel/Terathon-Math-Library", "platform": ["cpp", "cross-platform"], "pushed_at": "2026-07-27T18:07:57+00:00", "repo": "EricLengyel/Terathon-Math-Library", "stars": 1032, "tags": ["geometric-algebra", "linear-algebra", "quaternions", "3d-math", "vectors", "matrices", "game-engine-math", "algorithms", "game-development"], "topics": ["geometric-algebra", "linear-algebra", "quaternions", "3d-math-library"], "urls": [], "use_cases": ["3d vector and matrix math for game engines", "quaternion rotations for 3d graphics", "geometric algebra operations like lines planes and motors", "rigid body transforms and motion operators", "2d and 3d transform math in c++"], "what_it_is": "A C++ math library providing classes for 2D/3D/4D vectors, matrices, quaternions, dual numbers, and projective/rigid geometric algebra elements like lines, planes, motors, and flectors. It is designed for 3D graphics and game engine development, authored by Eric Lengyel.", "when_to_avoid": ["you need a general-purpose linear algebra library with arbitrary-size matrices or GPU support", "you work in a language other than C++", "you need SIMD-explicit or GPU-accelerated math kernels out of the box"], "when_to_choose": ["you need high-performance 3D math primitives in C++ for graphics or game engines", "you want to work with rigid geometric algebra (motors, flectors, flat points)", "you need a lightweight MIT-licensed math library without heavy dependencies"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/terathon-math-library", "repo": "EricLengyel/Terathon-Math-Library", "role": "main", "score": 75}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:18.218149+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:06:42.918592+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "af2acf08b435d5ed43b81041b53d5dec8e1b579b3b69b86e7b43106c175e6aad", "fetched_at": "2026-08-28T04:03:18.218149+00:00", "kind": "readme", "missing": false, "url": "https://github.com/EricLengyel/Terathon-Math-Library"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 94, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2095, "days_push": 37, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 75, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}