Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

SolidStart, the Solid app framework

License

NotificationsYou must be signed in to change notification settings

solidjs/solid-start

Repository files navigation

Solid Docs

SolidStart

This is the home of the SolidStart, the Solid app framework.

Features

  • File-system based routing
  • Supports all rendering modes:
    • Server-side rendering (SSR)
    • Streaming SSR
    • Client-side rendering (CSR)
    • Static site generation (SSG)
  • Streaming
  • Build optimizations with code splitting, tree shaking and dead code elimination
  • API Routes
  • Built on Web standards like Fetch, Streams, and WebCrypto
  • Adapters for deployment to all popular platforms
  • CSS Modules, SASS/SCSS Support
  • TypeScript-first

Getting started

Create a SolidStart application and run a development server using your preferred package manager:

mkdir my-appcd my-app# with npmnpm init solid@latestnpm installnpm run dev# or with pnpmpnpm create solid@latestpnpm installpnpm dev# or with Bunbun create solid@latestbun installbun dev

Development

You should use a Node.js version managercompatible with.node-version (asdf-vm is a great option macOS/Linux users)

The monorepo usespnpm as the package manager. To installpnpm, run the following command in your terminal.

npm install -g pnpm

Runpnpm install to install all the dependencies for the packages and examples in your monorepo.

Runpnpm build to build SolidStart project

Monorepo &project.json"workspace" support

If you are using SolidStart within a monorepo that takes advantage of thepackage.json"workspaces" property (e.g.Yarn workspaces) with hoisted dependencies (the default for Yarn), you must include#solidjs/start within the optional"nohoist" (for Yarn v2 or higher, see further down for instructions) workspaces property.

  • In the following, "workspace root" refers to the root of your repository while "project root" refers to the root of a child package within your repository.

For example, if specifying"nohoist" options from the workspace root (i.e. for all packages):

// in workspace root{"workspaces": {"packages": [/* ...*/    ],"nohoist": ["**/@solidjs/start"]  }}

If specifying"nohoist" options for a specific package using@solidjs/start:

// in project root of a workspace child{"workspaces": {"nohoist": ["@solidjs/start"]  }}

Regardless of where you specify thenohoist option, you also need to include@solidjs/start as adevDependency in the childpackage.json.

The reason why this is necessary is because@solidjs/start creates anindex.html file within your project which expects to load a script located in/node_modules/@solidjs/start/runtime/entry.jsx (where/ is the path of your project root). By default, if you hoist the@solidjs/start dependency into the workspace root then that script will not be available within the package'snode_modules folder.

Yarn v2 or higher

Thenohoist option is no longer available in Yarn v2+. In this case, we can use theinstallConfig property in thepackage.json (either workspace package or a specific project package) to make sure our deps are not hoisted.

// in project root of a workspace child{"installConfig": {"hoistingLimits":"dependencies"  }}

[8]ページ先頭

©2009-2025 Movatter.jp