Skip to content

feat(studio): remove home page, auto-select project#145

Merged
miguel-heygen merged 4 commits intomainfrom
feat/studio-no-home
Mar 31, 2026
Merged

feat(studio): remove home page, auto-select project#145
miguel-heygen merged 4 commits intomainfrom
feat/studio-no-home

Conversation

@miguel-heygen
Copy link
Copy Markdown
Collaborator

@miguel-heygen miguel-heygen commented Mar 30, 2026

Summary

Removes the ProjectPicker home screen entirely. The studio now boots directly into the editor by auto-selecting the first available project from /api/projects.

Changes

  • Auto-select on load: When no #project/ hash is present, fetches the project list and navigates to the first one
  • Type narrowing: Added if (resolving || !projectId) early return so TypeScript narrows projectId to string for all downstream props
  • Removed: ProjectPicker, ProjectCard, ExpandedPreviewIframe components (~280 lines), handleSelectProject callback, ProjectEntry interface

Why

The CLI studio always has exactly one project. The home page was an extra click with no value.

🤖 Generated with Claude Code

miguel-heygen and others added 3 commits March 31, 2026 01:12
Covers pnpm link, node alias, and npm pack workflows with a
table of test scenarios for each bug fix category.
Addresses review feedback: move the local CLI testing guide out of
the Guides nav group and into the Contributing section alongside
contributing.mdx.
Removes ProjectPicker, ProjectCard, and ExpandedPreviewIframe components.
On mount, the studio now auto-fetches /api/projects and navigates directly
to the first project instead of showing a selection screen.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Comment on lines +257 to 264
// eslint-disable-next-line no-restricted-syntax
useEffect(() => {
const hashMatch = window.location.hash.match(/^#project\/([^/]+)/);
if (hashMatch) {
setProjectId(hashMatch[1]);
setResolving(false);
return;
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why did we move from useMountEffect to useEffect?

@miguel-heygen miguel-heygen merged commit 05a7b03 into main Mar 31, 2026
15 checks passed
Copy link
Copy Markdown
Collaborator Author

Merge activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants