Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,26 @@ jobs:

steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
with:
run_install: false
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
cache-dependency-path: 'package-lock.json'
- run: npm ci
- run: npm run lint
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- run: pnpm install --frozen-lockfile
- run: pnpm run lint

- name: Build with Netlify badge
run: npm run build-serial
run: pnpm run build-serial
env:
VITE_SHOW_NETLIFY_BADGE: true
NODE_OPTIONS: --max_old_space_size=4096

- name: Build
run: npm run build-serial
run: pnpm run build-serial
env:
NODE_OPTIONS: --max_old_space_size=4096

Expand All @@ -45,7 +48,7 @@ jobs:
with:
name: docs
path: packages/docs/build
- run: npm test
- run: pnpm test

deploy_playground_and_docs:
runs-on: ubuntu-latest
Expand Down
17 changes: 10 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,21 @@ jobs:
- uses: actions/checkout@v6
with:
fetch-depth: 0 # Ensures it gets the tags and history correctly
- uses: pnpm/action-setup@v4
with:
run_install: false
- name: Use Node.js 24.x
uses: actions/setup-node@v6
with:
node-version: 24.x
cache: 'npm'
cache-dependency-path: 'package-lock.json'
- run: npm ci
- run: npm run build-serial
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- run: pnpm install --frozen-lockfile
- run: pnpm run build-serial
env:
NODE_OPTIONS: --max_old_space_size=4096
- run: npm test
- run: npm run lint
- run: pnpm test
- run: pnpm run lint
- name: Determine npm tag based on release version
id: get_npm_tag
run: |
Expand All @@ -38,7 +41,7 @@ jobs:

echo "NPM_TAG=${NPM_TAG_VALUE}" >> $GITHUB_ENV
echo "Determined NPM_TAG: ${NPM_TAG_VALUE}"
- run: npx nx release publish --tag=$NPM_TAG --provenance
- run: pnpm exec nx release publish --tag=$NPM_TAG --provenance
env:
# This ensures the npm CLI knows which registry to authenticate against using OIDC
NPM_CONFIG_REGISTRY: "https://registry.npmjs.org/"
Expand Down
2 changes: 1 addition & 1 deletion .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Hopefully this disables husky on github CI
[ -n "$CI" ] && exit 0
npm run pre-commit:husky
pnpm run pre-commit:husky
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@ should change the heading of the (upcoming) version to include a major version b

-->

# 6.7.0

## Dev / docs / playground

- Replaced npm with pnpm for development

# 6.6.2

## @rjsf/core
Expand Down
26 changes: 13 additions & 13 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,45 +6,45 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co

```bash
# Install dependencies
npm install
pnpm install

# Build all packages (parallel)
npm run build
pnpm run build

# Build all packages (sequential, use if parallel causes issues)
npm run build-serial
pnpm run build-serial

# Run all tests
npm test
pnpm test

# Lint
npm run lint
pnpm run lint

# Prettier check / format
npm run cs-check
npm run cs-format
pnpm run cs-check
pnpm run cs-format

# Run a single package's tests
cd packages/core && npm test
cd packages/core && pnpm test

# Watch mode for a single package
cd packages/core && npm run test:watch
cd packages/core && pnpm run test:watch

# Update snapshots
cd packages/snapshot-tests && npm run test:update
cd packages/snapshot-tests && pnpm run test:update

# Start the playground (interactive demo)
cd packages/playground && npm start
cd packages/playground && pnpm start

# Full sanity check (lint + build + test)
npm run sanity-check
pnpm run sanity-check
```

Individual package builds output three module formats: `build:cjs`, `build:esm`, `build:umd`.

## Architecture

This is an **npm workspaces + Nx** monorepo. All packages live under `packages/` and are scoped as `@rjsf/*`.
This is an **pnpm workspaces + Nx** monorepo. All packages live under `packages/` and are scoped as `@rjsf/*`.

### Package roles

Expand Down
2 changes: 1 addition & 1 deletion PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ If your PR is non-trivial and you'd like to schedule a synchronous review, pleas
- [ ] **I'm updating documentation**
- [ ] I've [checked the rendering](https://rjsf-team.github.io/react-jsonschema-form/docs/contributing) of the Markdown text I've added
- [ ] **I'm adding or updating code**
- [ ] I've added and/or updated tests. I've run `npx nx run-many --target=build --exclude=@rjsf/docs && npm run test:update` to update snapshots, if needed.
- [ ] I've added and/or updated tests. I've run `pnpm exec nx run-many --target=build --exclude=@rjsf/docs && pnpm run test:update` to update snapshots, if needed.
- [ ] I've updated [docs](https://rjsf-team.github.io/react-jsonschema-form/docs) if needed
- [ ] I've updated the [changelog](https://github.com/rjsf-team/react-jsonschema-form/blob/main/CHANGELOG.md) with a description of the PR
- [ ] **I'm adding a new feature**
Expand Down
2 changes: 1 addition & 1 deletion netlify.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[build]
base = ""
publish = "packages/playground/dist"
command = "npm run build-serial"
command = "corepack enable && pnpm run build-serial"
# Ignore dependabot PRs for deploy previews
ignore = "./netlify-ignore.sh"

Expand Down
Loading
Loading