{
  "contract": "tessli.public-collection.v2",
  "canonicalPath": "/collections/open-source-ui-libraries",
  "representations": {
    "json": "/collections/open-source-ui-libraries/collection.json",
    "markdown": "/collections/open-source-ui-libraries/collection.md"
  },
  "collection": {
    "id": "collection-open-source-ui-libraries",
    "slug": "open-source-ui-libraries",
    "title": "Open-source UI libraries",
    "description": "Open-source component systems and primitives for building accessible, composable, and implementation-ready web interfaces.",
    "outcome": "A component-library strategy that balances accessibility, styling ownership, speed, animation needs, and long-term maintenance.",
    "audience": "React product teams selecting primitives, copyable components, or higher-level UI building blocks.",
    "stageCount": 3,
    "resourceCount": 10,
    "stages": [
      {
        "order": 1,
        "id": "choose-the-foundation",
        "title": "Choose the foundation",
        "resources": [
          {
            "order": 1,
            "role": "shadcn/ui demonstrates copy-owned React components built on accessible primitives.",
            "inspectPrompt": "Compare accessible primitives, hooks, and copy-owned components before evaluating visual libraries.",
            "decisionPrompt": "Decide how much behavior, styling, and source ownership the team wants.",
            "sourceGuide": {
              "id": "resource-affc29967a7c",
              "slug": "shadcn-ui",
              "name": "shadcn/ui",
              "canonicalPath": "/resources/shadcn-ui",
              "jsonPath": "/resources/shadcn-ui/profile.json",
              "markdownPath": "/resources/shadcn-ui/profile.md",
              "providerUrl": "https://ui.shadcn.com",
              "accessAction": {
                "kind": "cli",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Use the documented CLI workflow in the target project."
              }
            }
          },
          {
            "order": 2,
            "role": "Radix UI represents unstyled accessible primitives with strong behavior ownership.",
            "inspectPrompt": "Compare accessible primitives, hooks, and copy-owned components before evaluating visual libraries.",
            "decisionPrompt": "Decide how much behavior, styling, and source ownership the team wants.",
            "sourceGuide": {
              "id": "resource-01db82f90e23",
              "slug": "radix-ui",
              "name": "Radix UI",
              "canonicalPath": "/resources/radix-ui",
              "jsonPath": "/resources/radix-ui/profile.json",
              "markdownPath": "/resources/radix-ui/profile.md",
              "providerUrl": "https://www.radix-ui.com",
              "accessAction": {
                "kind": "documentation",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Read the official Radix introduction and accessibility documentation before composing primitives.",
                "url": "https://www.radix-ui.com/primitives/docs/overview/introduction"
              }
            }
          },
          {
            "order": 3,
            "role": "Headless UI offers an alternative unstyled model across React and Vue.",
            "inspectPrompt": "Compare accessible primitives, hooks, and copy-owned components before evaluating visual libraries.",
            "decisionPrompt": "Decide how much behavior, styling, and source ownership the team wants.",
            "sourceGuide": {
              "id": "resource-3bfbe7e95242",
              "slug": "headless-ui",
              "name": "Headless UI",
              "canonicalPath": "/resources/headless-ui",
              "jsonPath": "/resources/headless-ui/profile.json",
              "markdownPath": "/resources/headless-ui/profile.md",
              "providerUrl": "https://headlessui.com",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://headlessui.com"
              }
            }
          }
        ]
      },
      {
        "order": 2,
        "id": "accelerate-common-ui",
        "title": "Accelerate common UI",
        "resources": [
          {
            "order": 1,
            "role": "React Aria provides accessibility-focused hooks and components for teams needing deeper behavior control.",
            "inspectPrompt": "Inspect styled and composable component sets that can extend the chosen foundation.",
            "decisionPrompt": "Decide which higher-level components are safe to adopt rather than rebuild.",
            "sourceGuide": {
              "id": "resource-9ad947201ac6",
              "slug": "react-aria",
              "name": "React Aria",
              "canonicalPath": "/resources/react-aria",
              "jsonPath": "/resources/react-aria/profile.json",
              "markdownPath": "/resources/react-aria/profile.md",
              "providerUrl": "https://react-spectrum.adobe.com/react-aria",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://react-spectrum.adobe.com/react-aria"
              }
            }
          },
          {
            "order": 2,
            "role": "Park UI shows a styled system built on headless primitives.",
            "inspectPrompt": "Inspect styled and composable component sets that can extend the chosen foundation.",
            "decisionPrompt": "Decide which higher-level components are safe to adopt rather than rebuild.",
            "sourceGuide": {
              "id": "resource-1cd898a493ab",
              "slug": "park-ui",
              "name": "Park UI",
              "canonicalPath": "/resources/park-ui",
              "jsonPath": "/resources/park-ui/profile.json",
              "markdownPath": "/resources/park-ui/profile.md",
              "providerUrl": "https://park-ui.com",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://park-ui.com"
              }
            }
          },
          {
            "order": 3,
            "role": "Kibo UI extends shadcn-oriented projects with more composable application components.",
            "inspectPrompt": "Inspect styled and composable component sets that can extend the chosen foundation.",
            "decisionPrompt": "Decide which higher-level components are safe to adopt rather than rebuild.",
            "sourceGuide": {
              "id": "resource-efc9a91db0cb",
              "slug": "kibo-ui",
              "name": "Kibo UI",
              "canonicalPath": "/resources/kibo-ui",
              "jsonPath": "/resources/kibo-ui/profile.json",
              "markdownPath": "/resources/kibo-ui/profile.md",
              "providerUrl": "https://www.kibo-ui.com",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://www.kibo-ui.com"
              }
            }
          }
        ]
      },
      {
        "order": 3,
        "id": "add-expression-carefully",
        "title": "Add expression carefully",
        "resources": [
          {
            "order": 1,
            "role": "Float UI supplies responsive Tailwind sections and components for faster assembly.",
            "inspectPrompt": "Review community, interactive, and motion-heavy components only after the accessibility and ownership boundary is fixed.",
            "decisionPrompt": "Choose where expressive components add value without fragmenting the system.",
            "sourceGuide": {
              "id": "resource-ea2802bd8265",
              "slug": "float-ui",
              "name": "Float UI",
              "canonicalPath": "/resources/float-ui",
              "jsonPath": "/resources/float-ui/profile.json",
              "markdownPath": "/resources/float-ui/profile.md",
              "providerUrl": "https://floatui.com",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://floatui.com"
              }
            }
          },
          {
            "order": 2,
            "role": "Uiverse provides community-made visual elements that require selective quality review.",
            "inspectPrompt": "Review community, interactive, and motion-heavy components only after the accessibility and ownership boundary is fixed.",
            "decisionPrompt": "Choose where expressive components add value without fragmenting the system.",
            "sourceGuide": {
              "id": "resource-2210207ad328",
              "slug": "uiverse",
              "name": "Uiverse",
              "canonicalPath": "/resources/uiverse",
              "jsonPath": "/resources/uiverse/profile.json",
              "markdownPath": "/resources/uiverse/profile.md",
              "providerUrl": "https://uiverse.io",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://uiverse.io"
              }
            }
          },
          {
            "order": 3,
            "role": "React Bits adds animated and interactive React components for targeted expressive moments.",
            "inspectPrompt": "Review community, interactive, and motion-heavy components only after the accessibility and ownership boundary is fixed.",
            "decisionPrompt": "Choose where expressive components add value without fragmenting the system.",
            "sourceGuide": {
              "id": "resource-d94d49dfe5a3",
              "slug": "react-bits",
              "name": "React Bits",
              "canonicalPath": "/resources/react-bits",
              "jsonPath": "/resources/react-bits/profile.json",
              "markdownPath": "/resources/react-bits/profile.md",
              "providerUrl": "https://reactbits.dev",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://reactbits.dev"
              }
            }
          },
          {
            "order": 4,
            "role": "Motion Primitives focuses specifically on reusable animated interface building blocks.",
            "inspectPrompt": "Review community, interactive, and motion-heavy components only after the accessibility and ownership boundary is fixed.",
            "decisionPrompt": "Choose where expressive components add value without fragmenting the system.",
            "sourceGuide": {
              "id": "resource-1f691e6fcca8",
              "slug": "motion-primitives",
              "name": "Motion Primitives",
              "canonicalPath": "/resources/motion-primitives",
              "jsonPath": "/resources/motion-primitives/profile.json",
              "markdownPath": "/resources/motion-primitives/profile.md",
              "providerUrl": "https://motion-primitives.com",
              "accessAction": {
                "kind": "browser",
                "preferred": true,
                "auth": "unknown",
                "agentAction": "Open the canonical provider URL; sign-in and other access requirements are not recorded.",
                "url": "https://motion-primitives.com"
              }
            }
          }
        ]
      }
    ]
  },
  "boundaries": [
    "Collection order is editorial guidance and does not represent popularity, sponsorship, or universal quality.",
    "Repository intelligence is not live-provider verification.",
    "Revalidate provider access, pricing, licensing, terms, availability, and time-sensitive claims.",
    "No browser-local Board, Saved, account, cookie, or credential data is included."
  ]
}
