# solid-start **Repository Path**: wcc210/solid-start ## Basic Information - **Project Name**: solid-start - **Description**: fork - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-09 - **Last Updated**: 2024-01-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Solid Docs

# SolidStart ### Start has just entered a new Beta Phase ### v0.4.x marks a significant change in the project. Please check the updated docs and example projects to see how things have changed. A summary of the chances can be found in the [RFC](https://github.com/solidjs/solid-start/discussions/1052). ------------------------------------ This is the home of the Solid app framework. This is still a **work in progress**. Many features are missing or incomplete. Experimental status does not even mean beta status. Patch releases will break everything. ## 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: ```bash mkdir my-app cd my-app # with npm npm init solid@latest npm install npm run dev # or with pnpm pnpm create solid@latest pnpm install pnpm dev # or with Bun bunx create-solid@latest bun install bun run dev ``` ### Development You should use a node version manager [compatible with `.node-version`](https://stackoverflow.com/a/62978089/565877) ([asdf-vm](https://asdf-vm.com/) is a great option mac/linux users) The monorepo uses `pnpm` as the package manager. To install `pnpm`, run the following command in your terminal. ```bash npm install -g pnpm ``` Run `pnpm install` to install all the dependencies for the packages and examples in your monorepo.

Monorepo & project.json "workspace" support

If you are using Solid Start within a monorepo that takes advantage of the `package.json` `"workspaces"` property (e.g. [yarn workspaces](https://classic.yarnpkg.com/en/docs/workspaces/)) with hoisted dependencies (the default for yarn), you must include `solid-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): ```jsonc // in workspace root { "workspaces": { "packages": [ /* ... */ ], "nohoist": ["**/solid-start"] } } ``` If specifying `"nohoist"` options for a specific package using `solid-start`: ```jsonc // in project root of a workspace child { "workspaces": { "nohoist": ["solid-start"] } } ``` Regardless of where you specify the `nohoist` option, you also need to include `solid-start` as a `devDependency` in the child `package.json`. The reason why this is necessary is because `solid-start` creates an `index.html` file within your project which expects to load a script located in `/node_modules/solid-start/runtime/entry.jsx` (where `/` is the path of your project root). By default, if you hoist the `solid-start` dependency into the workspace root then that script will not be available within the package's `node_modules` folder. **Yarn v2 or higher** The `nohoist` option is no longer available in Yarn v2+. In this case, we can use the `installConfig` property in the `package.json` (either workspace package or a specific project package) to make sure our deps are not hoisted. ```jsonc // in project root of a workspace child { "installConfig": { "hoistingLimits": "dependencies" } } ```
### Credits All credit for the work on Forms and Sessions goes to the @remix-run team, MIT License, Copyright 2021 Remix Software Inc.