You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat: support Rsbuild deployment adapters with Nitro - #578
Add Nitro, Railway, Render, Vercel, and Netlify deployment support to React/Solid Rsbuild Start projects, including tanstack add.
Use the experimental nitro/rsbuild integration and generate platform configuration. Share Nitro 3.0.261103-rc across Vite/Rsbuild, require Node.js >=22.22 and Rsbuild >=2.3, and intersect engine requirements across add-on overlays, preserving prerelease constraints and rejecting incompatible ranges. Cloudflare remains Vite-only pending a compatible Workerd dev runtime.
Validation: pnpm build and pnpm test pass (611 unit tests, 22 blocking browser tests). Generated Rsbuild/Vite projects pass build, typecheck, and local dev/SSR checks. Hosted deployments have not been exercised.
Summary by CodeRabbit
New Features
Create React and Solid Rsbuild Start projects with Nitro deployment adapters for Nitro, Railway, Render, Vercel, and Netlify.
Select an adapter during project creation or add one to an existing Rsbuild Start project. Generated projects include provider-specific configuration and deployment instructions.
Documentation
Updated CLI and deployment guides with adapter options and compatibility requirements: Node.js 22.22 or later and Rsbuild 2.3 or later.
Limitations
Deployment adapters are unavailable for router-only projects; Cloudflare remains available for Vite projects only.
No actionable comments were generated in the recent review.
Walkthrough
Rsbuild deployment adapters are available for React and Solid Start projects. The CLI supports adapter selection, and generated projects configure Nitro for supported providers. Router-only projects and Cloudflare remain unsupported for Rsbuild deployments.
Rsbuild accepts deployment add-ons with an rsbuild-plugin integration, allows at most one adapter, and rejects deployment adapters for router-only projects. Package generation includes deployment dependencies and merges engine ranges.
The CLI accepts Rsbuild deployment flags and offers eligible adapters during selection. Tests cover supported adapters, Cloudflare exclusion, and React and Solid Nitro scenarios.
sequenceDiagram
participant CLI
participant AddOnCatalog
participant ProjectGenerator
participant RsbuildConfig
participant Nitro
CLI->>AddOnCatalog: Select an eligible Rsbuild deployment adapter
ProjectGenerator->>RsbuildConfig: Emit imports and deployment plugin code
RsbuildConfig->>Nitro: Configure the provider preset
Loading
Suggested reviewers:tannerlinsley
Merge Risk: Minimal · up to d0f7e
This change adds Nitro-based deployment adapters for React and Solid Rsbuild Start projects and tightens how engine requirements are merged. No concrete merge-blocking problem was identified in the supplied evidence, so it looks ready to merge after normal checks.
Pre-merge checks: 4
Check name
Status
Explanation
Title check
The title "feat: support Rsbuild deployment adapters with Nitro" matches the main change. The changeset adds Nitro-based deployment adapters (nitro, railway, render, vercel, netlify) for Rsbuild Start…
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
Description Check
Check skipped - CodeRabbit’s high-level summary is enabled.
Full details: Title check
Explanation
The title "feat: support Rsbuild deployment adapters with Nitro" matches the main change. The changeset adds Nitro-based deployment adapters (nitro, railway, render, vercel, netlify) for Rsbuild Start projects, and the PR objectives state the same goal. The title is short, specific, and follows a conventional commit style. It does not cover the engine-merge logic, but that is expected.
Finishing Touches
Generate unit tests (beta)
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Warning
Some tools did not complete. Review the errors below.
ESLint
If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.
packages/create/tests/package-json.test.ts
Parsing error: "parserOptions.project" has been provided for @typescript-eslint/parser.
The file was not found in any of the provided project(s): packages/create/tests/package-json.test.ts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
File: No configuration file from this repository applied
Commit: Unavailable
Layers: defaults
Review profile: CHILL
Plan: Advanced
Run ID: c76572ea-5a4a-44f7-b484-366a294dd91d
Commits
Reviewing files that changed from the base of the PR and between 71c1f79 and d0f7ef8.
Files selected for processing: 2
packages/create/src/package-engines.ts
packages/create/tests/package-json.test.ts
Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.
@schiller-manuel Could you review this PR when you have a chance? It adds Nitro-based deployment support for React and Solid Rsbuild projects in the CLI. Thanks!
Unverified finding
Verification ran but could not confirm this finding. It is shown for review, not as a verified issue.
Update the target versions for the new adapter support.
This reference targets CLI v0.71.0. The deployment-provider reference targets v0.61.0. This adapter support is in a pending minor changeset after v0.72.16, so agents using either stated version can recommend unsupported commands. Update both references to target the first release that includes this change. (raw.githubusercontent.com)
Review info
Run configuration
Source mode: Auto
Repository: Unavailable
Branch: Unavailable
File: No configuration file from this repository applied
Commit: Unavailable
Layers: defaults
Review profile: CHILL
Plan: Advanced
Run ID: 2b50bb68-9803-4396-ae95-be60aeb02e2f
Commits
Reviewing files that changed from the base of the PR and between efb68bd and 71c1f79.
Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.
The built-in Nitro and WorkOS combination keeps the correct Node 22.22 floor. The general engine merge still has a prerelease edge case for custom add-ons.
AI review notes: In a generated React app using synthetic engine declarations, merging >=22.0.0-rc.1 <23 with >=20 <22.5 lets 22.0.0-rc.2 through even though the second range rejects it. SemVer prerelease opt-in is evaluated per comparator set. Concatenating the two sets can carry one side's opt-in into the combined range. For each pair of alternatives, preserve their stable-version intersection and include prereleases only for version tuples explicitly admitted on both sides. Add a regression that checks the rejected prerelease and an accepted stable version through both manifest generation paths.
@tannerlinsley Fixed in d0f7ef87. Engine intersections now require prerelease opt-in from both ranges and reject empty intersections, with regression coverage through both Node and edge manifest generation.
pnpm build and pnpm test pass (611 unit tests, 22 blocking browser tests). Could you take another look? Thanks!
Support Nitro, Railway, Render, Vercel, and Netlify deployment adapters in React and Solid Rsbuild Start projects using Nitro's experimental Rsbuild integration. Rsbuild deployment projects require Node.js >=22.22 and Rsbuild >=2.3. Cloudflare remains Vite-only until its Nitro development runtime is compatible with Workerd.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add Nitro, Railway, Render, Vercel, and Netlify deployment support to React/Solid Rsbuild Start projects, including
tanstack add.Use the experimental
nitro/rsbuildintegration and generate platform configuration. Share Nitro3.0.261103-rcacross Vite/Rsbuild, require Node.js >=22.22 and Rsbuild >=2.3, and intersect engine requirements across add-on overlays, preserving prerelease constraints and rejecting incompatible ranges. Cloudflare remains Vite-only pending a compatible Workerd dev runtime.Validation:
pnpm buildandpnpm testpass (611 unit tests, 22 blocking browser tests). Generated Rsbuild/Vite projects pass build, typecheck, and local dev/SSR checks. Hosted deployments have not been exercised.Summary by CodeRabbit
New Features
Documentation
Limitations