跳转到主要内容

Solid

import { AutoconfigDiagram, Badge, Description, InlineBadge, Render, PackageManagers, } from "~/components";

:::note Support for SolidStart projects on Cloudflare Workers is currently in beta. :::

:::tip[Already have a Solid Start project?] Run wrangler deploy in a project without a Wrangler configuration file and Wrangler will automatically detect Solid Start, generate the necessary configuration, and deploy your project.

Learn more about automatic project configuration. :::

<AutoconfigDiagram framework="Solid Start" configs={[ { label: "main", file: "wrangler.jsonc", value: ".output/server/index.mjs" }, { label: "assets", file: "wrangler.jsonc", value: "directory: .output/public" }, { label: "compatibility_flags", file: "wrangler.jsonc", value: "nodejs_compat" }, { label: "observability", file: "wrangler.jsonc", value: "enabled: true" }, ]} />

In this guide, you will create a new Solid application and deploy to Cloudflare Workers (with the new Workers Assets).

1. Set up a new project

Use the create-cloudflare CLI (C3) to set up a new project. C3 will create a new project directory, initiate Solid's official setup tool, and provide the option to deploy instantly.

To use create-cloudflare to create a new Solid project with Workers Assets, run the following command:

After setting up your project, change your directory by running the following command:

cd my-solid-app

2. Develop locally

After you have created your project, run the following command in the project directory to start a local server. This will allow you to preview your project locally during development.

<PackageManagers type="run" args={"dev"} />

3. Deploy your Project

Your project can be deployed to a *.workers.dev subdomain or a Custom Domain, from your own machine or from any CI/CD system, including Cloudflare's own.

The following command will build and deploy your project. If you're using CI, ensure you update your "deploy command" configuration appropriately.

<PackageManagers type="run" args={"deploy"} />


Bindings

Your Solid application can be fully integrated with the Cloudflare Developer Platform, in both local development and in production, by using product bindings. The Solid documentation provides information about how to access platform primitives, including bindings. Specifically, for Cloudflare, you can use getRequestEvent().nativeEvent.context.cloudflare.env to access bindings.