Skip to content

Commit effb45c

Browse files
committed
docs: add UI testing guide to CLAUDE.md, align dev scripts
- Add documentation for running example apps and combined examples-app for UI testing with Playwright MCP - Rename "serve" to "dev" in vue and vue-vanilla packages for consistency across all renderer sets - Update README.md to reflect the vue-vanilla script rename - Add .pnpm-store and .playwright-mcp to .gitignore
1 parent fd7979a commit effb45c

5 files changed

Lines changed: 57 additions & 5 deletions

File tree

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,6 @@ stats.html
1515
.coveralls.yml
1616
packages/examples-react/build
1717

18-
**/.angular/cache
18+
**/.angular/cache
19+
.pnpm-store
20+
.playwright-mcp

CLAUDE.md

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,54 @@ pnpm lerna run test --scope=@jsonforms/core
3838

3939
### Build Order Dependencies
4040

41-
`core``react`/`angular`/`vue` → renderer packages
41+
`core``react`/`angular`/`vue` → renderer packages.
42+
Lerna automatically respects the build order dependencies.
43+
44+
## Running Example Applications for UI Testing
45+
46+
Each renderer set has its own example application with a dev server. Before starting any dev server, you **must** first install dependencies and build all packages:
47+
48+
```bash
49+
pnpm install # Install dependencies (run from repo root)
50+
pnpm run build # Build all packages (required before dev servers work)
51+
```
52+
53+
All renderer sets share the same set of examples from `packages/examples/`.
54+
55+
### Individual Dev Servers
56+
57+
Start dev servers from the **repo root** using `cd` into the package directory.
58+
Each renderer set example application can be started by executing `pnpm run dev`.
59+
60+
### Combined Examples App (All Renderer Sets)
61+
62+
The combined examples app aggregates all 5 renderer sets into a single static app at `packages/examples-app/dist/`.
63+
It has an index page with links to each renderer set's sub-app.
64+
65+
**Full build (first time or after `clean`):**
66+
67+
```bash
68+
pnpm install # Install dependencies
69+
pnpm run build # Build all packages (required first)
70+
pnpm run build:examples-app # Build all example bundles + aggregate into dist
71+
```
72+
73+
**Rebuild after code changes to a specific renderer set:**
74+
75+
```bash
76+
# 1. Rebuild the changed package (and any dependencies that changed)
77+
pnpm lerna run build --scope=@jsonforms/material-renderers
78+
79+
# 2. Rebuild only that renderer set's example bundle
80+
pnpm lerna run build:examples-app --scope=@jsonforms/material-renderers
81+
82+
# 3. Re-aggregate into the combined app
83+
node packages/examples-app/prepare-examples-app.js
84+
```
85+
86+
**Serving the combined app:**
87+
88+
```bash
89+
# No built-in serve script exists - use any static file server:
90+
python3 -m http.server 9090 --directory packages/examples-app/dist
91+
```

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ In this case, you can try to clean the repository with `git clean -dfx`. Beware
6767
- Run React Vanilla examples: `cd packages/vanilla-renderers && pnpm run dev`
6868
- Run React Material examples: `cd packages/material-renderers && pnpm run dev`
6969
- Run Angular Material examples: `cd packages/angular-material && pnpm run dev`
70-
- Run Vue Vanilla dev setup: `cd packages/vue-vanilla && pnpm run serve`
70+
- Run Vue Vanilla dev setup: `cd packages/vue-vanilla && pnpm run dev`
7171
- Run Vue Vuetify dev setup: `cd packages/vue-vuetify && pnpm run dev`
7272

7373
### Dependency & Release management

packages/vue-vanilla/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
"vanilla.css"
4444
],
4545
"scripts": {
46-
"serve": "vue-cli-service serve dev/serve.ts",
46+
"dev": "vue-cli-service serve dev/serve.ts",
4747
"build": "cross-env NODE_ENV=production rollup --config rollup.config.js",
4848
"build:examples-app": "rollup -c rollup.example.config.js",
4949
"clean": "rimraf lib example/dist",

packages/vue/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
"src/*"
4040
],
4141
"scripts": {
42-
"serve": "vue-cli-service serve dev/serve.ts",
42+
"dev": "vue-cli-service serve dev/serve.ts",
4343
"build": "cross-env NODE_ENV=production rollup --config rollup.config.js",
4444
"clean": "rimraf lib",
4545
"lint": "eslint .",

0 commit comments

Comments
 (0)