{"adoption": {"forks": 266, "observed_at": "2026-08-28T04:06:20.733657+00:00", "stars": 2159}, "canonical_url": "https://ross.abutalabs.com/products/lobe-ui", "card": {"archived": false, "artifact_type": "library", "description": "🍭  Lobe UI - an open-source UI component library for building AIGC web apps", "domain": ["frontend", "web-development", "large-language-models", "chatbots", "artificial-intelligence"], "enriched": true, "function": ["ui-components", "frontend-framework", "chat-interface", "markdown", "theme", "internationalization"], "health_score": 100, "homepage": "https://ui.lobehub.com", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["lobehub/lobe-ui"], "name": "lobehub/lobe-ui", "platform": ["browser"], "pushed_at": "2026-08-26T14:31:02+00:00", "repo": "lobehub/lobe-ui", "stars": 2159, "tags": ["react", "antd", "aigc", "design-system", "typescript", "esm-only", "streaming-markdown", "nextjs", "nodejs", "web-server"], "topics": ["react", "design-system", "ui", "ui-components", "ui-kit", "lobehub", "aigc", "chatbot", "antd", "typescript", "dumi"], "urls": [], "use_cases": ["build a chatbot web interface in react", "render streaming markdown with math and mermaid in an ai app", "find ui components for an llm chat application", "add ai provider icons to my web app", "themeable react component library for ai interfaces", "build an aigc web app with nextjs"], "what_it_is": "Lobe UI is an open-source React UI component library built on Ant Design for building AIGC (AI-generated content) web apps. It provides 90+ components including streaming Markdown rendering with math and Mermaid support, AI provider icons, theming, and i18n for 18 locales.", "when_to_avoid": ["your project is not React-based or requires CommonJS (ESM only)", "you need a general-purpose UI kit with no AI-specific components", "you prefer a styling solution other than css-in-js/antd-style"], "when_to_choose": ["building a React/Next.js AI chat or AIGC application", "you need streaming markdown, KaTeX, and Mermaid rendering out of the box", "you want Ant Design compatibility with AI-focused components", "you need built-in light/dark theming and multi-locale i18n"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/lobe-ui", "repo": "lobehub/lobe-ui", "role": "main", "score": 92}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "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:06:20.733657+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.733657+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:50:20.481320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "93ae69f12c94c0091f27dca95e4c62a6d126537584f1e1164121cda82ffc2bb3", "fetched_at": "2026-08-28T04:06:20.733657+00:00", "kind": "readme", "missing": false, "url": "https://github.com/lobehub/lobe-ui"}, {"content_hash": "ef6de84fcd40b84931b79e6f0d3232c5dd18a7aa59ae660f55cf1b12fc9f8c50", "fetched_at": "2026-08-29T10:30:31.911655+00:00", "kind": "homepage", "missing": false, "url": "https://ui.lobehub.com"}, {"content_hash": "ffd5987cbf9c9154c0feccbd15b4764bd23e969eec6328e90d76bff452c49787", "fetched_at": "2026-08-29T10:30:31.923945+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/lobe-ui"}, {"content_hash": "223f52ea0c8a325902b1eb297e14de2ff56d467e1620aa6e2a48fb27d473a09f", "fetched_at": "2026-08-29T10:30:31.920818+00:00", "kind": "site_page", "missing": false, "url": "https://ui.lobehub.com/changelog"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 85, "rhythm": 87}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1200, "days_push": 7, "days_rel": 7, "gap_med": 0, "n_releases_24m": 516}, "score": 92, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}