{
  "note": "Everything the home page lists, in order. Add a product by adding an entry here; main.js renders the cards and the status panel from it. group: products | addons. status: live | beta | alpha | soon | locked (drives the light's colour; statusLabel is what it says). featured: the one wide card at the top. image: 960x540 webp in /img/products/. accent: the product's own colour.",
  "products": [
    {
      "id": "actionforge",
      "name": "ActionForge",
      "group": "products",
      "featured": true,
      "status": "live",
      "statusLabel": "Live · Beta",
      "platform": "Web",
      "tagline": "Character animation, right in your browser.",
      "description": "Browse, layer, adjust and pose game-ready clips with live IK, retarget them onto your own rig, reshape walks in the Motion Lab, then export FBX or GLB for Unreal, Unity, Godot or Blender. Free, and nothing to install.",
      "tags": ["FBX / GLB", "IK", "Retargeting", "Motion Lab", "CC0 clips"],
      "url": "https://actionforge.app/",
      "cta": "Open ActionForge",
      "image": "/img/products/actionforge.webp",
      "imageAlt": "ActionForge: the mannequin in six animation clips on a perspective grid",
      "accent": "#09c5cc"
    },
    {
      "id": "cg-painter",
      "name": "CG Painter",
      "group": "products",
      "status": "alpha",
      "statusLabel": "Alpha 0.4",
      "platform": "Win · Linux",
      "tagline": "A free 3D texture painter.",
      "description": "Paint straight onto your meshes across UV seams, stack procedural masks for wear and cavity, bake AO, curvature and normals, and export engine-ready textures.",
      "tags": ["C++20", "OpenGL 4.5", "Qt", "PBR"],
      "url": "https://cgstuff.xyz/painter",
      "cta": "Get CG Painter",
      "image": "/img/products/cg-painter.webp",
      "imageAlt": "CG Painter's interface with a painted tree trunk in the viewport",
      "accent": "#ff9933"
    },
    {
      "id": "character-lab",
      "name": "Character Lab",
      "group": "products",
      "status": "live",
      "statusLabel": "Live",
      "platform": "Web",
      "tagline": "Build a character, piece by piece.",
      "description": "A character customiser in the browser: swap parts, tint them, try them on animations, and export the result as GLB.",
      "tags": ["GLB", "three.js", "Customiser"],
      "url": "https://cgstuff.xyz/viewer",
      "cta": "Open Character Lab",
      "image": "/img/products/character-lab.webp",
      "imageAlt": "A stylised character lit green at a desk, from Character Lab",
      "accent": "#a970ff"
    },
    {
      "id": "vfx-creator",
      "name": "CG VFX Creator",
      "group": "products",
      "status": "soon",
      "statusLabel": "Coming soon",
      "platform": "Godot · Web",
      "tagline": "Real-time VFX, authored visually.",
      "description": "A particle-effects authoring tool for Godot and the web. Build the effect once, see it live, take it straight into the engine.",
      "tags": ["Particles", "Godot", "Web"],
      "url": "https://cgstuff.xyz/vfx-creator",
      "cta": "Take a look",
      "image": "/img/products/vfx-creator.webp",
      "imageAlt": "Two explosion simulations side by side, one shaded and one showing its particles",
      "accent": "#4ea1ff"
    },
    {
      "id": "classified",
      "name": "???",
      "group": "products",
      "status": "locked",
      "statusLabel": "Classified",
      "tagline": "Something's cooking.",
      "description": "There's more in the lab than what's on this page. The devlog gets it first.",
      "url": "https://www.youtube.com/@cgstuff87",
      "cta": "Watch the devlog",
      "accent": "#ff4d8d"
    },
    {
      "id": "action-library",
      "name": "Action Library",
      "group": "addons",
      "status": "live",
      "statusLabel": "Free",
      "platform": "Blender",
      "tagline": "Your animation library, inside Blender.",
      "description": "Organise your actions, browse them in a fast modern UI, and load any of them in one click.",
      "tags": ["Blender add-on", "Animation"],
      "url": "https://github.com/CGstuff/Action-Library",
      "cta": "On GitHub",
      "image": "/img/products/action-library.webp",
      "imageAlt": "The Action Library logo",
      "accent": "#ff8f6b"
    },
    {
      "id": "universal-library",
      "name": "Universal Library",
      "group": "addons",
      "status": "live",
      "statusLabel": "Free",
      "platform": "Blender + DCC",
      "tagline": "One asset library across your tools.",
      "description": "Organise, browse and load assets across several DCC apps from one place, so the same library follows you between them.",
      "tags": ["Blender add-on", "Assets"],
      "url": "https://github.com/CGstuff/Universal-Library",
      "cta": "On GitHub",
      "image": "/img/products/universal-library.webp",
      "imageAlt": "The Universal Library logo",
      "accent": "#ffb020"
    }
  ]
}
