{"adoption": {"forks": 647, "observed_at": "2026-08-28T04:09:18.033553+00:00", "stars": 5431}, "canonical_url": "https://ross.abutalabs.com/products/react-notion-x", "card": {"archived": false, "artifact_type": "library", "description": "Fast and accurate React renderer for Notion. TS batteries included. ⚡️", "domain": ["web-development", "frontend", "cms", "documentation"], "enriched": true, "function": ["ui-components", "frontend-framework", "templating"], "health_score": 100, "homepage": "https://react-notion-x-demo.transitivebullsh.it", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["NotionX/react-notion-x"], "name": "NotionX/react-notion-x", "platform": ["browser"], "pushed_at": "2026-08-24T13:26:00+00:00", "repo": "NotionX/react-notion-x", "stars": 5431, "tags": ["notion", "react", "nextjs", "typescript", "page-renderer", "notion-api", "nodejs", "web-server"], "topics": ["notion", "notion-api", "react-notion", "typescript", "react", "nextjs"], "urls": [], "use_cases": ["render notion pages in react", "build a blog from notion content", "publish notion pages as a website", "display notion databases in nextjs", "convert notion workspace to a fast static site", "embed notion content in a react app"], "what_it_is": "A fast and accurate React renderer for Notion pages, built in TypeScript. It fetches Notion page data via notion-client and renders it as React components, supporting most public Notion block types and collection views.", "when_to_avoid": ["you need to edit or write to Notion, not just render", "you rely on private Notion pages requiring auth", "you don't use React"], "when_to_choose": ["you want to render public Notion pages with React control", "you need high Lighthouse performance for Notion-backed sites", "you use Next.js, Vite, or Remix and want framework-agnostic rendering"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/react-notion-x", "repo": "NotionX/react-notion-x", "role": "main", "score": 99}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "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:18.033553+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:18.033553+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:56:53.995093+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "da4b8cb3a22f6f4ebaf8d141ec1c2e7af0e2914508bf3f99bae39d9678b0bab7", "fetched_at": "2026-08-28T04:09:18.033553+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NotionX/react-notion-x"}, {"content_hash": "8ea137a5e9133d8b3a574c8c8ffd782e16b4e19a1d73f66048bd0a6d21ce6258", "fetched_at": "2026-08-29T08:52:21.635195+00:00", "kind": "homepage", "missing": false, "url": "https://react-notion-x-demo.transitivebullsh.it"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 99}, "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": 2210, "days_push": 9, "days_rel": 10, "gap_med": 1.5, "n_releases_24m": 37}, "score": 99, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}