solidjs / solidjs/solid-vite-plugin

Define the portable application deployment adapter contract

Open
#328 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
520
Forks
70
Avg merge
23h 35m
Merged PRs (30d)
39

Description

Problem

The plugin-managed application mode can compose with provider Vite plugins, but the deployment-facing contract is currently spread across generated virtual modules, environment setup, build ordering, output directories, manifests, static output, and prerender behavior.

Provider integrations should not need to depend on undocumented implementation details to deploy a Solid application.

Proposed scope

Document and test the portable contract between @solidjs/vite-plugin and deployment adapters:

  • the production server service entry and Fetch handler shape
  • client and server environment names and required build ordering
  • client assets, manifests, and output locations
  • SSR, client-only, and server-function-only output differences
  • static shell and prerender output
  • which lifecycle steps the Solid plugin owns
  • which responsibilities remain with provider plugins

Where appropriate, expose named APIs or types instead of requiring adapters to import private virtual modules or reproduce internal assumptions.

Non-goals

  • implementing provider-specific deployment policy
  • replacing Cloudflare, Netlify, Nitro, or other Vite integrations
  • prescribing platform configuration

The goal is a stable composition boundary so provider plugins can remain thin adapters over a web-standard Solid application handler.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the plugin-managed application mode, generated virtual modules, environment setup, build ordering, output directories, manifests, and prerender behavior described in the issue. Map the existing provider-facing assumptions, then document and test a stable contract; done means deployment adapters can use named APIs or types without importing private modules or reproducing internal behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vite
Domain
backend-api-design, build-system, devops, documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.