Experiment Hub

ToolCompleted

Experimentation scaffold for founders.

Why this matters

I'm a neurodiverse designer and founder. My best ideas come fast and from everywhere. I need a lightweight scafoold to support developing them with rigor and pursue the strongest ones with focus.

Hypothesis

I want a tool lightweight enough to get started fast, but structured enough to keep going.

Exec Summary

Experiment Hub is a structured ecosystem of agents, skills, spec-based development, and design system that allow me to discover, evaluate, build, and test business ideas.

History
  1. Mar 2026Added a Claude Code session-start hook for web environments. receipt ↗
  2. Mar 2026Fixed workflow matrix cell rendering in the experiments table. receipt ↗
  3. Mar 2026Added BHD Labs intro copy to the home page. receipt ↗
  4. Mar 2026Codebase explainer session. receipt ↗
  5. Mar 2026Consolidated the project branch. receipt ↗
  6. Mar 2026Added the Landing Page stage to the workflow state machine and shared the cell component. receipt ↗
  7. Mar 2026Added 33 tests for the MarkdownContent component. receipt ↗
  8. Mar 2026Improved SOM parsing accuracy and surfaced the Year 1/2/3 breakdown. receipt ↗
  9. Mar 2026Improved the SOM calculations. receipt ↗
  10. Mar 2026Added the market-research validator and revised the TAM methodology. receipt ↗
  11. Mar 2026Design consistency: score tokens, extracted components, validation. receipt ↗
  12. Mar 2026Improved responsive padding on large screens. receipt ↗
  13. Mar 2026Added security headers and improved metadata configuration. receipt ↗
  14. Mar 2026Hub codebase review session. receipt ↗
  15. Mar 2026Hub codebase review, part 2. receipt ↗
  16. Mar 2026Tested the OpenAI API connection. receipt ↗
  17. Mar 2026Added rate limiter tests. receipt ↗
  18. Mar 2026Reorganized the test structure. receipt ↗
  19. Mar 2026Removed the section boxes. receipt ↗
  20. Mar 2026Synced color tokens and the front page with the Figma redesign. receipt ↗
  21. Mar 2026Progress review session. receipt ↗
  22. Mar 2026Aligned the UI with the Figma design: green palette, sections, nav, footer. receipt ↗
  23. Mar 2026Published the app from Replit. receipt ↗
  24. Mar 2026Added @types/jsdom to resolve the TypeScript TS7016 error. receipt ↗
  25. Mar 2026Rewrote the README as the BHD Labs project overview. receipt ↗
  26. Mar 2026Added vitest.live.config.ts so live tests aren't blocked by the exclude pattern. receipt ↗
  27. Mar 2026Added NOTION_TOKEN support so form submissions work on Vercel. receipt ↗
  28. Mar 2026Improved the architecture diagram layout. receipt ↗
  29. Mar 2026Gated prototype APIs behind ADMIN_SECRET and fixed vulnerable dependencies. receipt ↗
  30. Mar 2026Added a unit-test job and live Supabase integration test to CI. receipt ↗
  31. Mar 2026Lazy-init the Supabase client so live tests don't crash without env vars. receipt ↗
  32. Mar 2026Security gating follow-through; removed binary assets. receipt ↗
  33. Mar 2026Replaced Notion with Supabase for the experiment waitlist. receipt ↗
  34. Apr 2026Documented the sitemap capture workflow. receipt ↗
  35. Apr 2026Two-layer plugin architecture for the Figma MCP integration. receipt ↗
  36. Apr 2026Added the screenshot sitemap capture workflow. receipt ↗
  37. Apr 2026Migrated to the plugin-based two-layer Figma architecture (docs). receipt ↗
  38. Apr 2026Backfilled unit tests across workflow states, Supabase, landing submit, and prototype routes. receipt ↗
  39. Apr 2026Experiment hub build session. receipt ↗
  40. Apr 2026Defined responsive breakpoints for the hub shell (mobile + tablet). receipt ↗
  41. Apr 2026Template simplification follow-through. receipt ↗
  42. Apr 2026Fixed three small TODOs across packet flow and hooks. receipt ↗
  43. Apr 2026Removed the landing page tab from experiment details. receipt ↗
  44. Apr 2026Simplified experiment templates, added learnings, consolidated to one view. receipt ↗
  45. Apr 2026Process guardrail: the stop hook now blocks until an open PR exists for feature branches. receipt ↗
  46. Apr 2026Review pass on recent changes. receipt ↗
  47. Apr 2026Added the experiment type field and branched the market-research agent by type. receipt ↗
  48. Apr 2026Matched typography to the Figma spec for experiment PRD and research sections. receipt ↗
  49. Apr 2026Instrumented the hub with GA4. receipt ↗
  50. Apr 2026Ignored the Obsidian vault directory. receipt ↗
  51. Apr 2026Added the nextjs-api-routes convention rule. receipt ↗
  52. Apr 2026Added the vitest-conventions rule. receipt ↗
  53. Apr 2026Added the component-conventions rule with Figma references. receipt ↗
  54. Apr 2026Hub PRD updated to v1.1 with optional features. receipt ↗
  55. Apr 2026Notebook eval harness and personal hub entry. receipt ↗
  56. Apr 2026Added edit-mode auth tests for middleware and the content API route. receipt ↗
  57. Apr 2026Markdown tables now render as HTML tables. receipt ↗
  58. Apr 2026PRD session for the hub. receipt ↗
  59. Apr 2026Added the sitemap skill to .claude/skills. receipt ↗
  60. Apr 2026Business Case + PRD tabs with in-browser editing. receipt ↗
  61. Apr 2026Cleaned session artifacts out of the experiment folders. receipt ↗
  62. Apr 2026Fixed the PRD edit textarea that was always empty. receipt ↗
  63. Apr 2026Used the URL slug as the Supabase key so saves persist on refresh. receipt ↗
  64. Apr 2026Added pnpm workspaces, Turborepo, and the shared-packages foundation. receipt ↗
  65. Apr 2026Added the business-case writer service and tightened hub skills. receipt ↗
  66. Apr 2026Lean PRD outcomes, tool experiment cases, hub sync. receipt ↗
  67. Apr 2026Untracked the ephemeral .claude/skills copies. receipt ↗
  68. May 2026Session skills identified and inventoried. receipt ↗
  69. May 2026Removed the Learnings sidebar from the experiment detail layout. receipt ↗
  70. May 2026Adopted OpenSpec spec-driven development: specs, change archive, opsx commands — the operating system for everything after. receipt ↗
  71. May 2026Permissions chore for smoother agent sessions. receipt ↗
  72. May 2026Aligned Cursor and Claude hook config for cloud agents. receipt ↗
  73. May 2026experiment-hub-lite default schema + photo filters banner studio. receipt ↗
  74. May 2026Artifact links and opsx skill single-source-of-truth. receipt ↗
  75. May 2026OpenSpec apply now ends in a commit and PR. receipt ↗
  76. May 2026Refined cursor rules and markdown editing. receipt ↗
  77. May 2026Design guidelines now prefer shadcn. receipt ↗
  78. May 2026Archived merged changes and synced specs. receipt ↗
  79. May 2026Right-aligned the home hero info columns. receipt ↗
  80. May 2026BHD phase tabs on the experiment detail page. receipt ↗
  81. May 2026Added the issue-triage skill (P0–P4 rubric). receipt ↗
  82. Jun 2026Added a PR template with an explicit Closes section. receipt ↗
  83. Jun 2026Hooks now block pushes to branches with an already-merged PR. receipt ↗
  84. Jun 2026Added token-efficiency guidance to the principles. receipt ↗
  85. Jun 2026Codified verify-before-done, root-cause, and secrets-in-config rules with a solo reframe. receipt ↗
  86. Jun 2026Fixed footer/nav for logged-in users and added the unresolved-thread gate. receipt ↗
  87. Jun 2026Landing submissions use the publishable key; dropped the service-role dependency. receipt ↗
  88. Jun 2026Added analytics opt-out support. receipt ↗
  89. Jun 2026Added per-experiment notes with a Supabase backend. receipt ↗
  90. Jun 2026Migrated experiment data to Supabase with Notes and PR sections. receipt ↗
  91. Jun 2026Strengthened Copilot review rules across six gap areas. receipt ↗
  92. Jun 2026Added the notes table migration. receipt ↗
  93. Jun 2026Fixed the PRD edit tab showing business case content. receipt ↗
  94. Jun 2026Synced photo-filters-banner and snap-issue into the experiments JSON. receipt ↗
  95. Jun 2026Drafted GitHub Copilot review instructions to complement Claude/Cursor rules. receipt ↗
  96. Jun 2026Proper admin area with login form and experiment dashboard. receipt ↗
  97. Jun 2026Discovery tab full doc render + PR sync query encoding fix. receipt ↗
  98. Jun 2026Symlinked .claude/commands so opsx slash commands work in Claude Code. receipt ↗
  99. Jun 2026Discovery, Business Case, PRD tabs — always visible. receipt ↗
  100. Jul 2026Constrained experiment-detail content to max-w-screen-xl on wide viewports. receipt ↗
  101. Jul 2026Admin surfaces save errors; added error handling to the status PATCH route. receipt ↗
  102. Jul 2026Admin falls back to the service-role key for Supabase reads. receipt ↗
  103. Jul 2026Wired the GitHub Packages registry and session npm auth for MVDS. receipt ↗
  104. Jul 2026Linked-repos backend: external repo tracking, graduation, hub-as-proxy. receipt ↗
  105. Jul 2026Supabase build-failure assessment and Postgres upgrade plan. receipt ↗
  106. Jul 2026The hub writes experiment edits back to Notion when configured. receipt ↗
  107. Jul 2026Resolved the dynamic route conflict crashing admin login (504). receipt ↗
  108. Jul 2026The hub reads experiments from the Notion database. receipt ↗
  109. Jul 2026Key-value field list on the experiment detail page. receipt ↗
  110. Jul 2026Dropped the invalid pull_request_review_thread trigger causing failed push runs. receipt ↗
  111. Jul 2026Consolidated the seed organizer into the pnpm workspace on Next 16. receipt ↗
  112. Jul 2026Adapted the Notion adapter to the renamed database schema. receipt ↗
  113. Jul 2026CI and Vercel skip unaffected builds per path. receipt ↗
  114. Jul 2026Rule: open PRs ready-for-review with a Copilot review loop. receipt ↗
  115. Jul 2026Removed unused experiment detail tab helpers. receipt ↗
  116. Jul 2026Admin cookie guards fail closed when ADMIN_SECRET is unset. receipt ↗
  117. Jul 2026The hub moved onto its own design system: Tailwind v4 + native MVDS consumption. receipt ↗
  118. Jul 2026Codified the 2026-07-17 process learnings into the scaffold. receipt ↗
  119. Jul 2026Labs hub improvements from the investor review. receipt ↗
  120. Jul 2026Repointed .cursor/rules links to tracked rules/ paths. receipt ↗
  121. Jul 2026tell-the-story spec + design merged (approved 02.1 Figma). receipt ↗
  122. Jul 2026OpenSpec apply PRs open ready-for-review, not draft. receipt ↗
  123. Jul 2026ExperimentTypeBadge renders the Commercial badge for commercial type. receipt ↗
  124. Jul 2026Deploy hub only on app changes; stopped behind-the-scenes deploys. receipt ↗
  125. Jul 2026Stopped hardcoding the cursor/ branch prefix. receipt ↗
  126. Jul 2026Archived stop-the-leaks and synced the public-content-gate spec. receipt ↗
  127. Jul 2026Stop the leaks: curated public experiment pages (allowlist, private-by-default). receipt ↗
  128. Jul 2026tell-the-story tasks: resolved the Notion storage shape. receipt ↗
  129. Jul 2026Removed the /workflow page; redirects to home. receipt ↗
  130. Jul 2026Proposed remove-workflow-page: drop /workflow from the hub app. receipt ↗
  131. Jul 2026Folded BDE exemplar evidence into the tell-the-story tasks. receipt ↗
  132. Jul 2026Archived remove-workflow-page and synced the spec. receipt ↗
  133. Jul 2026Experiment-history read adapter + History band on the detail page. receipt ↗
  134. Jul 2026Promoted the 2026-07-21 process learnings into the scaffold. receipt ↗
  135. Jul 2026Receipt links on History entries + tasks.md status. receipt ↗
  136. Jul 2026History accumulation slice: draft generator, insert-only writer, monthly Action. receipt ↗
  137. Jul 2026Notion AI cleaned up the Labs History feed: added taxonomy options, mapped PR milestones to experiments, and documented the curation pass.