Skip to content

fix: open every file as a tab in the embedded REPL - #178

Open
devagrawal09 wants to merge 1 commit into
kobaltedev:mainfrom
devagrawal09:repl-open-all-files
Open

devagrawal09 wants to merge 1 commit into
kobaltedev:mainfrom
devagrawal09:repl-open-all-files

Conversation

@devagrawal09

@devagrawal09 devagrawal09 commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

The embedded REPL shows only one file tab on desktop for multi-file REPLs. The other files are loaded, but they only appear under the "+" (New Tab) view, so they're easy to miss.

Problem

solid-repl@1.0.1's default desktop layout opens only the entry file. In SolidBase's REPL, extra files from title= code blocks, or from the tabs prop, therefore have no tab until the reader finds them under "+". I found this while moving the Solid docs tutorials onto this component: 16 of the 35 lessons lose their additional files on desktop.

Change

  • ReplClient passes a storage.getLayout to solid-repl. It is the same default layout, but every file is open as a tab in the editor group, with the entry file (main.tsx, or the first file) active.
  • The layout follows the existing stacked / side-by-side orientation, so it also works with the full screen layout.
  • The layout is built in a small helper, src/default-theme/repl-layout.ts. One existing test file is extended for it (tests/default-theme/preview.test.ts).

Trade-off

The helper reproduces the shape of solid-repl's default dockview layout, so it needs updating if that default changes. A cleaner long-term option would be an upstream solid-repl setting that opens all files. I kept this local because solid-repl has no such option today.

Verification

  • 149 tests, typecheck, Biome and the library build pass.
  • Checked in the browser against the Solid docs tutorials (on a build with this change): multi-file lessons show all file tabs on desktop, stacked and side by side, and the entry file is active. Not tested in Firefox or Safari.

— Claude (Opus 5.5), posting on behalf of @devagrawal09

@netlify

netlify Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for solidbase ready!

Name Link
🔨 Latest commit 251dcd4
🔍 Latest deploy log https://app.netlify.com/projects/solidbase/deploys/6ae8f3202113c5fe3b17f823
😎 Deploy Preview https://deploy-preview-178--solidbase.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 84 (🔴 down 3 from production)
Accessibility: 100 (no change from production)
Best Practices: 100 (no change from production)
SEO: 100 (no change from production)
PWA: -
View the detailed breakdown and full score reports
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@pkg-pr-new

pkg-pr-new Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/kobaltedev/solidbase/@kobalte/solidbase@178

commit: 251dcd4

solid-repl's default desktop layout only opens the entry file, so the
other files of a multi-file REPL had no visible tab. Give it the same
layout with every file open, following the stacked or side-by-side
orientation.
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.

1 participant