[!IMPORTANT] This is the branch for the SolidStart 2.0.0-alpha that is currently under heavy development.
Current SolidStart is maintained at
1.x.
.nvmrc. To manage multiple versions across your system, we recommend a version manager such as fnm, or another of your choice.npm install -g pnpm. Or let Corepack handle it in the setup step below.SolidStart is a pnpm-based monorepo with nested workspaces. Key directories include:
packages/start: The core @solidjs/start package.apps/landing-page: The official landing page.apps/tests: Unit and end-to-end (E2E) tests using Vitest and Playwright.apps/fixtures: Fixture projects for testing.Use pnpm filters (e.g. pnpm --filter @solidjs/start ...) to target specific packages.
bash
git clone https://github.com/solidjs/solid-start.git
cd solid-start
bash
corepack enable
bash
pnpm dedupe
(pnpm dedupe will install dependencies and clean the lockfile from duplicates, useful for preventing conflicts).
bash
pnpm run build:allIf you encounter issues (e.g. missing node_modules), clean the workspace
pnpm run clean:all
Then reinstall dependencies and rebuild.
End-to-end tests are located in apps/tests projects. For manual testing and development use the apps/fixtures apps, and finally, integration and unit tests live inside their respective packages.
bash
pnpm --filter tests exec playwright install chromium
bash
pnpm --filter tests run build
bash
pnpm --filter tests run unit
pnpm --filter tests run unit:ciUI mode: pnpm --filter tests run unit:ui
Run E2E tests
bash
pnpm --filter tests run e2e
UI mode: pnpm --filter tests run e2e:ui
Clean test artifacts
bash
pnpm run clean:test
Make your changes in the relevant package (e.g. packages/start)
Rebuild affected packages
bash
pnpm run packages:build
For a full rebuild: pnpm run build:all
Test your changes
For fixtures, pick the name of the fixture and run the dev with workspace filtering.
bash
pnpm --filter fixture-basic dev
For the landing page (from the root directory)
bash
pnpm run lp:dev
Clean builds if needed
bash
pnpm run packages:clean # Cleans packages' node_modules and dist folders
pnpm run lp:clean # Cleans the landing page
pnpm run clean:root # Cleans root-level caches
If you have read all the way here, you're already a champ! 🏆 Thank you.
$ claude mcp add solid-start \
-- python -m otcore.mcp_server <graph>