Skip to content

Commit eb5ee4a

Browse files
committed
refactor(react): extract @nodejs/doc-kit-generator-react package
1 parent d3306a2 commit eb5ee4a

119 files changed

Lines changed: 498 additions & 348 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.c8rc.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"eslint.config.mjs",
55
"**/fixtures",
66
"packages/core/src/generators/legacy-html/assets",
7-
"packages/core/src/generators/web/ui",
7+
"packages/react/src/html/ui",
88
"**/*.d.ts"
99
]
1010
}

.changeset/react-kitten-package.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
'@nodejs/doc-kit-generator-react': minor
3+
'@node-core/doc-kit': major
4+
---
5+
6+
The React/JSX-based generators (`html` — previously `web` —, `jsx-ast`,
7+
`llms-txt`, `sitemap`, and `orama-db`) now live in the new
8+
`@nodejs/doc-kit-generator-react` package and are loaded via import specifiers such as
9+
`@nodejs/doc-kit-generator-react/html`. The corresponding `@node-core/doc-kit/*`
10+
package exports have been removed. The `web` generator is renamed to `html`:
11+
the CLI shorthand `web` keeps working as a deprecated alias, but the
12+
configuration key is now `html` instead of `web`.

.prettierignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ packages/core/src/generators/api-links/__tests__/fixtures/
55
*.snapshot
66

77
# Templates
8-
packages/core/src/generators/web/template.html
8+
packages/react/src/html/template.html
99

1010
# Output
1111
out/

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,11 +98,11 @@ npx doc-kit generate \
9898

9999
### Redesigned
100100

101-
To generate [our redesigned documentation pages](https://nodejs-api-docs-tooling.vercel.app), use the `web` and `orama-db` (for search) generators.
101+
To generate [our redesigned documentation pages](https://nodejs-api-docs-tooling.vercel.app), use the `html` and `orama-db` (for search) generators. These generators live in the separate [`@nodejs/doc-kit-generator-react`](packages/react) package, which must be installed alongside this one.
102102

103103
```sh
104104
npx doc-kit generate \
105-
-t web \
105+
-t html \
106106
-t orama-db \
107107
-i "path/to/node/doc/api/*.md" \
108108
-o out \

beta/doc-kit.config.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
export default {
2-
web: {
2+
html: {
33
remoteConfigUrl:
44
'https://raw.githubusercontent.com/nodejs/doc-kit/main/beta/site.json',
55

docs/comparators.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ scripts/comparators/
3535

3636
Comparators can be reused across multiple generators. You specify which comparator to use in the workflow file using the `compare` field. For example:
3737

38-
- `file-size.mjs` can compare output from `web`, `legacy-html`, or any generator
38+
- `file-size.mjs` can compare output from `html`, `legacy-html`, or any generator
3939
- `object-assertion.mjs` can compare JSON output from `legacy-json`, `json-simple`, etc.
4040
- `my-comparator.mjs` would be a custom comparator for specific needs
4141

docs/generators.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Raw Markdown Files
2121
2222
[jsx-ast] - Convert to JSX AST
2323
24-
[web] - Generate HTML/CSS/JS bundles
24+
[html] - Generate HTML/CSS/JS bundles
2525
```
2626

2727
Each generator declares its dependency using the `dependsOn` field, allowing automatic pipeline construction.
@@ -357,7 +357,7 @@ export default {
357357

358358
description: 'Requires all input at once',
359359

360-
dependsOn: '@node-core/doc-kit/jsx-ast',
360+
dependsOn: '@nodejs/doc-kit-generator-react/jsx-ast',
361361

362362
generate,
363363
};

eslint.config.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ export default defineConfig([
9696
{
9797
files: [
9898
'packages/core/src/generators/legacy-html/assets/*.js',
99-
'packages/core/src/generators/web/ui/**/*',
99+
'packages/react/src/html/ui/**/*',
100100
],
101101
languageOptions: {
102102
globals: {

package-lock.json

Lines changed: 45 additions & 17 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/core/package.json

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,12 @@
2323
"./ast": "./src/generators/ast/index.mjs",
2424
"./ast-js": "./src/generators/ast-js/index.mjs",
2525
"./json-simple": "./src/generators/json-simple/index.mjs",
26-
"./jsx-ast": "./src/generators/jsx-ast/index.mjs",
2726
"./legacy-html": "./src/generators/legacy-html/index.mjs",
2827
"./legacy-html-all": "./src/generators/legacy-html-all/index.mjs",
2928
"./legacy-json": "./src/generators/legacy-json/index.mjs",
3029
"./legacy-json-all": "./src/generators/legacy-json-all/index.mjs",
31-
"./llms-txt": "./src/generators/llms-txt/index.mjs",
3230
"./man-page": "./src/generators/man-page/index.mjs",
3331
"./metadata": "./src/generators/metadata/index.mjs",
34-
"./orama-db": "./src/generators/orama-db/index.mjs",
35-
"./sitemap": "./src/generators/sitemap/index.mjs",
36-
"./web": "./src/generators/web/index.mjs",
3732
"./package.json": "./package.json",
3833
"./shiki.config.mjs": "./shiki.config.mjs",
3934
"./src/*": "./src/*",
@@ -53,35 +48,19 @@
5348
"README.md"
5449
],
5550
"dependencies": {
56-
"@11ty/is-land": "^5.0.1",
5751
"@actions/core": "^3.0.0",
58-
"@fontsource-variable/open-sans": "^5.3.0",
59-
"@fontsource/ibm-plex-mono": "^5.3.0",
60-
"@heroicons/react": "^2.2.0",
6152
"@node-core/rehype-shiki": "^1.4.3",
62-
"@node-core/ui-components": "^1.7.4",
63-
"@orama/orama": "^3.1.18",
64-
"@orama/ui": "^1.5.4",
6553
"@swc/html-wasm": "^1.15.46",
6654
"@swc/wasm": "^1.15.46",
6755
"acorn": "^8.17.0",
6856
"commander": "^15.0.0",
6957
"cosmiconfig": "^9.0.2",
7058
"dedent": "^1.7.2",
71-
"estree-util-to-js": "^2.0.0",
7259
"estree-util-visit": "^2.0.0",
7360
"github-slugger": "^2.0.0",
7461
"glob-parent": "^6.0.2",
75-
"hast-util-to-string": "^3.0.1",
7662
"hastscript": "^9.0.1",
77-
"mdast-util-slice-markdown": "^2.0.1",
7863
"piscina": "^5.3.0",
79-
"preact": "^10.29.7",
80-
"preact-render-to-string": "^6.7.0",
81-
"reading-time": "^1.5.0",
82-
"recma-jsx": "^1.0.1",
83-
"rehype-raw": "^7.0.0",
84-
"rehype-recma": "^1.0.0",
8564
"rehype-stringify": "^10.0.1",
8665
"remark-gfm": "^4.0.1",
8766
"remark-mdx": "^3.1.1",
@@ -98,7 +77,14 @@
9877
"unist-util-remove": "^4.0.0",
9978
"unist-util-select": "^5.1.0",
10079
"unist-util-visit": "^5.1.0",
101-
"vite": "~8.1.5",
10280
"yaml": "^2.9.0"
81+
},
82+
"peerDependencies": {
83+
"@nodejs/doc-kit-generator-react": "^0.0.0"
84+
},
85+
"peerDependenciesMeta": {
86+
"@nodejs/doc-kit-generator-react": {
87+
"optional": true
88+
}
10389
}
10490
}

0 commit comments

Comments
 (0)