{"adoption": {"forks": 4202, "observed_at": "2026-08-28T04:11:35.161114+00:00", "stars": 23669}, "canonical_url": "https://ross.abutalabs.com/products/react-starter-kit", "card": {"archived": false, "artifact_type": "framework", "description": "Modern React starter kit with Bun, TypeScript, Tailwind CSS, tRPC, Stripe, and Cloudflare Workers. Production-ready monorepo for building fast web apps.", "domain": ["web-development", "frontend", "backend", "cloud-computing", "developer-tools"], "enriched": true, "function": ["web-framework", "auth", "orm", "api-framework", "ui-components", "state-management", "routing", "form-handling", "developer-tools", "boilerplate"], "health_score": 79, "homepage": "https://reactstarter.com", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["kriasoft/react-starter-kit"], "name": "kriasoft/react-starter-kit", "platform": ["bun", "cross-platform"], "pushed_at": "2026-08-23T20:58:14+00:00", "repo": "kriasoft/react-starter-kit", "stars": 23669, "tags": ["react", "trpc", "tailwindcss", "shadcn-ui", "stripe", "better-auth", "drizzle-orm", "tanstack-router", "monorepo", "starter-kit", "saas-boilerplate", "edge-deployment", "neon-postgresql", "hono", "multi-tenant", "saas", "cloudflare-workers", "typescript", "nodejs", "web-server"], "topics": ["react", "boilerplate", "nodejs", "starter-kit", "typescript", "template", "cloudflare", "vite", "hono", "trpc", "shadcn-ui", "tailwindcss", "better-auth", "bun", "cloudflare-workers", "drizzle-orm", "tanstack-router", "saas", "neon", "gcp"], "urls": [], "use_cases": ["build a SaaS web app from scratch", "start a full-stack React project with auth and billing included", "deploy a React app to Cloudflare Workers edge", "set up a multi-tenant SaaS with Stripe subscriptions", "bootstrap a type-safe API with tRPC and Drizzle ORM", "quickly ship an MVP as an indie hacker", "create a monorepo template with React, Bun, and TypeScript"], "what_it_is": "A production-ready monorepo starter kit for building full-stack SaaS web applications with React 19, tRPC, Better Auth, Stripe billing, and Drizzle ORM on Cloudflare Workers. It wires together authentication, multi-tenant database schema, billing, email, and edge deployment so developers can skip months of boilerplate setup.", "when_to_avoid": ["you need a different hosting platform like AWS, Vercel, or traditional Node.js servers", "you prefer a minimal setup and want to assemble your own stack", "your project is not a web application (e.g., mobile, CLI, or data pipeline)", "you're locked into a different database than PostgreSQL/Neon", "you need server-side rendering with a framework like Next.js rather than an SPA + edge API model"], "when_to_choose": ["you want a batteries-included SaaS foundation with auth, billing, and database pre-configured", "you plan to deploy on Cloudflare Workers and want edge-native architecture", "you want end-to-end type safety from database to UI with tRPC and Drizzle", "you're building a multi-tenant product with organizations and roles", "you want modern React 19 tooling with Tailwind CSS and shadcn/ui"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/react-starter-kit", "repo": "kriasoft/react-starter-kit", "role": "main", "score": 67}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "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:11:35.161114+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:35.161114+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:56:25.500336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c49d4837367bade6c36374bf01b6547131d58beb712c4cfcd1bc902f72a9bc1", "fetched_at": "2026-08-28T04:11:35.161114+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kriasoft/react-starter-kit"}, {"content_hash": "5878da1e748a78a79d65137dd39b191d97a639cd3d45be20da2188cdf70b53d1", "fetched_at": "2026-08-29T07:54:31.422970+00:00", "kind": "homepage", "missing": false, "url": "https://reactstarter.com"}, {"content_hash": "0811cda9e61499e52d03b57f7094c26445661a7bc00c6bfc269f900f537d0e79", "fetched_at": "2026-08-29T07:54:31.425462+00:00", "kind": "site_page", "missing": false, "url": "https://reactstarter.com/getting-started"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 8}, "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": 4522, "days_push": 10, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 67, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}