{"adoption": {"forks": 627, "observed_at": "2026-08-28T04:09:04.725699+00:00", "stars": 5019}, "canonical_url": "https://ross.abutalabs.com/products/cadam", "card": {"archived": false, "artifact_type": "application", "description": "CADAM is the open source text-to-CAD web application", "domain": ["artificial-intelligence", "web-development", "robotics"], "enriched": true, "function": ["llm-inference", "agent-framework", "web-framework", "graphics", "simulation"], "health_score": 99, "homepage": "https://adam.new/cadam", "language": "TypeScript", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["Adam-CAD/CADAM"], "name": "Adam-CAD/CADAM", "platform": ["browser", "wasm"], "pushed_at": "2026-08-26T22:23:56+00:00", "repo": "Adam-CAD/CADAM", "stars": 5019, "tags": ["text-to-cad", "openscad", "stl", "parametric-modeling", "3d-modeling", "generative-design", "mechanical-engineering", "supabase", "computer-aided-design", "ai-agents", "engineering", "web", "nodejs"], "topics": ["ai", "cad", "openscad", "react", "text-to-cad", "wasm", "agents", "ai-agents", "llms", "mechnical-engineering", "robotics", "stl"], "urls": [], "use_cases": ["generate a 3D CAD model from a text description", "create parametric parts by describing them in plain English", "convert an image reference into an STL model for 3D printing", "tweak dimensions of a generated model with sliders and export as DXF", "prototype mechanical parts in the browser without installing CAD software", "use OpenSCAD libraries like BOSL2 to build models via AI"], "what_it_is": "CADAM is an open-source web application that converts natural language descriptions and images into 3D CAD models using LLM-powered agents and OpenSCAD compiled to WebAssembly. It runs entirely in the browser, offering parametric controls and export to STL, SCAD, and DXF formats.", "when_to_avoid": ["you need production-grade precision engineering or assemblies like SolidWorks or Fusion 360 provide", "you require proprietary CAD formats such as STEP or native part files", "you need offline desktop CAD with full feature trees and drawings", "your models demand tight tolerances beyond what LLM-generated OpenSCAD code can guarantee"], "when_to_choose": ["you want to generate simple 3D-printable models from text or images without CAD expertise", "you need a browser-based, no-install text-to-CAD workflow", "you want an open-source, self-hostable alternative to proprietary text-to-CAD tools", "you work with OpenSCAD and want AI-assisted parametric modeling"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cadam", "repo": "Adam-CAD/CADAM", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "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:09:04.725699+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:04.725699+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:17:30.167554+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5e8f6ecfe30be8a2b83c9c6b70d94919f10ceed48c00859571bec297d6fd27d5", "fetched_at": "2026-08-28T04:09:04.725699+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Adam-CAD/CADAM"}, {"content_hash": "7dd685c56bd0d834ec17e9c3a8a5bcef0ffa819d2c81e138a870c0eb6e21aaad", "fetched_at": "2026-08-29T08:58:27.434149+00:00", "kind": "homepage", "missing": false, "url": "https://adam.new/cadam"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 26, "rhythm": 77}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 366, "days_push": 7, "days_rel": 77, "gap_med": 78, "n_releases_24m": 4}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}