{
  "schema": "cad-agent-catalog-area/1",
  "origin": "https://cad-agent.valpatel.com",
  "revision": "f766bf2694e3e66e1ac84c901be1091bdb9863da",
  "fields": {
    "level": "domain, area or bucket",
    "domain": "areas: the domain it belongs to",
    "priority": "demo (a good demo)",
    "projects": "areas: keys of the projects in docs/areas.yaml (areas_source) that used it",
    "issues": "GitHub issues for work in this area",
    "topics": "areas: its topics, with scope, maturity and issues",
    "areas": "domains: its areas",
    "count": "entries here",
    "kinds": "count per kind",
    "items": "every entry placed here (a domain holds its areas' entries): the fields of catalog.json without summary and related"
  },
  "item_fields": "https://cad-agent.valpatel.com/catalog.json (fields)",
  "slug": "compliant-mechanisms",
  "title": "Compliant mechanisms",
  "scope": "One-piece parts that flex instead of sliding or screwing.",
  "maturity": "tooling",
  "level": "area",
  "domain": "mechanical",
  "priority": [
    "demo"
  ],
  "projects": [],
  "issues": [
    "https://github.com/Valpatel/cad-agent/issues/94",
    "https://github.com/Valpatel/cad-agent/issues/95",
    "https://github.com/Valpatel/cad-agent/issues/137"
  ],
  "topics": [
    {
      "slug": "snap-fits",
      "title": "Snap fits",
      "scope": "Cantilever, torsion and annular snaps sized by print direction.",
      "maturity": "tooling",
      "issues": [
        "https://github.com/Valpatel/cad-agent/issues/95",
        "https://github.com/Valpatel/cad-agent/issues/161",
        "https://github.com/Valpatel/cad-agent/issues/165"
      ]
    },
    {
      "slug": "flexures",
      "title": "Flexures",
      "scope": "Flexure hinges and stages: stiffness, stroke and fatigue.",
      "maturity": "surveyed",
      "issues": [
        "https://github.com/Valpatel/cad-agent/issues/95"
      ]
    },
    {
      "slug": "living-hinges",
      "title": "Living hinges",
      "scope": "Thin hinges in printed and moulded plastics.",
      "maturity": "surveyed",
      "issues": []
    }
  ],
  "count": 8,
  "kinds": {
    "demo": 3,
    "tool": 1,
    "project": 2,
    "guide": 1,
    "research": 1
  },
  "page": "https://cad-agent.valpatel.com/catalog?area=compliant-mechanisms",
  "index": "https://cad-agent.valpatel.com/catalog/index.json",
  "items": [
    {
      "type": "demo",
      "status": "ours",
      "name": "Snap-arm explorer",
      "url": "https://cad-agent.valpatel.com/docs/compliant#try-it-the-snap-arm-explorer",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/compliant.md",
      "id": "demo-snap-arm-explorer",
      "kind": "demo",
      "areas": [
        "compliant-mechanisms"
      ],
      "maturity": "tooling",
      "what": "Size a cantilever snap arm and watch it bend, coloured by strain, with pass or fail for the print direction.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/docs/img/compliant/cantilever-explorer.svg",
      "demo": "https://cad-agent.valpatel.com/docs/compliant#try-it-the-snap-arm-explorer",
      "licence_family": "permissive",
      "updated": "2026-11-01",
      "mode": "interactive"
    },
    {
      "type": "demo",
      "status": "ours",
      "name": "Torsion-snap explorer",
      "url": "https://cad-agent.valpatel.com/docs/compliant#try-it-the-torsion-snap-explorer",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/compliant.md",
      "id": "demo-torsion-snap-explorer",
      "kind": "demo",
      "areas": [
        "compliant-mechanisms"
      ],
      "maturity": "tooling",
      "what": "Twist a printed bar with a lever and see its shear strain against the filament's allowable, and the force.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/docs/img/compliant/torsion-snap-explorer.svg",
      "demo": "https://cad-agent.valpatel.com/docs/compliant#try-it-the-torsion-snap-explorer",
      "licence_family": "permissive",
      "updated": "2026-11-01",
      "mode": "interactive"
    },
    {
      "type": "demo",
      "status": "ours",
      "name": "Cantilever snap fit",
      "url": "https://cad-agent.valpatel.com/docs/compliant",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/compliant.md",
      "id": "demo-snap-fit",
      "kind": "demo",
      "areas": [
        "compliant-mechanisms"
      ],
      "maturity": "tooling",
      "what": "The hook rides up the catch's lead-in, drops in behind it and holds when pulled back, computed from the outlines.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/still/snap-fit.svg",
      "demo": "https://cad-agent.valpatel.com/docs/compliant",
      "licence_family": "permissive",
      "updated": "2026-11-01",
      "mode": "animated",
      "cover_animated": "https://cad-agent.valpatel.com/catalog/covers/snap-fit.svg"
    },
    {
      "type": "tool",
      "status": "ours",
      "name": "cad-agent snapfit",
      "url": "https://cad-agent.valpatel.com/docs/toolkit",
      "how": "cad-agent snapfit --help",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/compliant.md",
      "doc": "https://cad-agent.valpatel.com/docs/compliant",
      "id": "tool-snapfit",
      "kind": "tool",
      "areas": [
        "compliant-mechanisms"
      ],
      "maturity": "tooling",
      "what": "Size and check snap fits declared in a YAML/JSON file (docs/compliant.md)",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/docs/img/compliant/example-1.svg",
      "demo": "https://cad-agent.valpatel.com/docs/compliant#try-it-the-snap-arm-explorer",
      "licence_family": "permissive",
      "updated": "2026-11-01"
    },
    {
      "type": "upstream",
      "status": "candidate",
      "name": "dwragon/Fusion360SnapFitGenerator",
      "url": "https://github.com/dwragon/Fusion360SnapFitGenerator",
      "policy": "reference for parameters (MPL-2.0 file-level copyleft; Fusion add-in, not an agent tool)",
      "license": "MPL-2.0",
      "stars": 5,
      "last_push": "2026-10-29",
      "id": "project-dwragon-fusion360snapfitgenerator",
      "kind": "project",
      "areas": [
        "compliant-mechanisms",
        "housings-and-enclosures"
      ],
      "maturity": "tooling",
      "what": "Autodesk Fusion add-in that splits an enclosure in two and builds cantilever, torsion or annular snap fits",
      "notes": "5 snap types with strain and force calculation",
      "cover": "https://cad-agent.valpatel.com/catalog/covers/project-dwragon-fusion360snapfitgenerator.svg",
      "demo": null,
      "licence_family": "copyleft",
      "updated": "2026-10-29"
    },
    {
      "type": "upstream",
      "status": "candidate",
      "name": "static74/3dp-compliant-mechanisms",
      "url": "https://github.com/static74/3dp-compliant-mechanisms",
      "policy": "may incorporate with attribution: the selection table and evals are the ideas to take for #94, after recomputing its strain values (about 2x the datasheet-derived ones); nothing vendored yet",
      "license": "MIT",
      "stars": 0,
      "last_push": "2026-10-26",
      "id": "project-static74-3dp-compliant-mechanisms",
      "kind": "project",
      "areas": [
        "compliant-mechanisms",
        "3d-printing"
      ],
      "maturity": "tooling",
      "what": "Claude skill for FDM compliant mechanisms, snap fits, springs and glue features, after Slant 3D's methods",
      "notes": "FDM compliant-mechanism skill; prompt-only; candidate: take the selection table and evals with attribution after recomputing its strains",
      "cover": "https://cad-agent.valpatel.com/catalog/covers/project-static74-3dp-compliant-mechanisms.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-10-26"
    },
    {
      "type": "doc",
      "status": "ours",
      "name": "Snap fits and compliant features",
      "url": "https://cad-agent.valpatel.com/docs/compliant",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/docs/compliant.md",
      "source": "https://github.com/Valpatel/cad-agent/blob/dev/docs/compliant.md",
      "id": "guide-compliant",
      "kind": "guide",
      "areas": [
        "compliant-mechanisms"
      ],
      "maturity": "tooling",
      "what": "cadagent.mechanical.compliant sizes and checks snap-fit joints so an agent does not re-derive the equations, guess a permissible strain or forget layer lines.",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/catalog/covers/guide-compliant.svg",
      "demo": "https://cad-agent.valpatel.com/docs/compliant#try-it-the-snap-arm-explorer",
      "licence_family": "permissive",
      "updated": "2026-11-01"
    },
    {
      "type": "research",
      "status": "ours",
      "name": "Compliant mechanisms and single-part joints: references, equations, allowables, process effects (2026-10-31)",
      "url": "https://cad-agent.valpatel.com/research/compliant-mechanisms",
      "license": "MIT",
      "markdown": "https://cad-agent.valpatel.com/research/compliant-mechanisms.md",
      "source": "https://github.com/Valpatel/cad-agent/blob/dev/research/compliant-mechanisms.md",
      "id": "research-compliant-mechanisms",
      "kind": "research",
      "areas": [
        "compliant-mechanisms"
      ],
      "maturity": "tooling",
      "what": "For Valpatel/cad-agent #94 (compliant-mechanism engineer), #95 (calculators), #97 (pitfalls), #99 (process profiles).",
      "notes": null,
      "cover": "https://cad-agent.valpatel.com/docs/img/research/fdm-anisotropy.svg",
      "demo": null,
      "licence_family": "permissive",
      "updated": "2026-11-01"
    }
  ]
}
