From 82db5d398d7ad3d8c7cde8603d5065fbafa27ce9 Mon Sep 17 00:00:00 2001
From: avivkeller
Date: Fri, 7 Aug 2026 11:56:27 -0400
Subject: [PATCH 1/4] chore: rename packages
---
.changeset/legacy-kitten-package.md | 6 +++---
.changeset/plain-defaults.md | 2 +-
.changeset/react-kitten-package.md | 6 +++---
CONTRIBUTING.md | 4 ++--
README.md | 2 +-
docs/creating-generators.md | 2 +-
docs/customization.md | 2 +-
docs/generators.md | 4 ++--
package-lock.json | 16 +++++++--------
packages/core/README.md | 4 ++--
packages/core/package.json | 8 ++++----
packages/core/src/generators/index.mjs | 20 +++++++++----------
packages/legacy/README.md | 6 +++---
packages/legacy/package.json | 2 +-
packages/legacy/src/legacy-html-all/index.mjs | 2 +-
packages/legacy/src/legacy-json-all/index.mjs | 2 +-
packages/react/README.md | 4 ++--
packages/react/package.json | 2 +-
packages/react/src/html/README.md | 2 +-
packages/react/src/html/index.mjs | 2 +-
www/doc-kit.config.mjs | 4 ++--
www/pages/getting-started.md | 2 +-
22 files changed, 52 insertions(+), 52 deletions(-)
diff --git a/.changeset/legacy-kitten-package.md b/.changeset/legacy-kitten-package.md
index b38a21ca..9003bb58 100644
--- a/.changeset/legacy-kitten-package.md
+++ b/.changeset/legacy-kitten-package.md
@@ -1,11 +1,11 @@
---
-'@nodejs/doc-kit-generator-legacy': major
+'@doc-kit/generator-legacy': major
'@nodejs/doc-kit': major
---
The legacy-format generators (`legacy-html`, `legacy-html-all`,
`legacy-json`, and `legacy-json-all`) now live in the new
-`@nodejs/doc-kit-generator-legacy` package and are loaded via import specifiers such
-as `@nodejs/doc-kit-generator-legacy/legacy-html`. The corresponding
+`@doc-kit/generator-legacy` package and are loaded via import specifiers such
+as `@doc-kit/generator-legacy/legacy-html`. The corresponding
`@nodejs/doc-kit/*` package exports have been removed. The CLI shorthand
names are unchanged.
diff --git a/.changeset/plain-defaults.md b/.changeset/plain-defaults.md
index 56ae327b..104d40ce 100644
--- a/.changeset/plain-defaults.md
+++ b/.changeset/plain-defaults.md
@@ -1,6 +1,6 @@
---
'@nodejs/doc-kit': patch
-'@nodejs/doc-kit-generator-react': minor
+'@doc-kit/generator-react': minor
---
Defaults are now project-neutral instead of Node.js-specific
diff --git a/.changeset/react-kitten-package.md b/.changeset/react-kitten-package.md
index 25b93ea9..0076c254 100644
--- a/.changeset/react-kitten-package.md
+++ b/.changeset/react-kitten-package.md
@@ -1,12 +1,12 @@
---
-'@nodejs/doc-kit-generator-react': minor
+'@doc-kit/generator-react': minor
'@nodejs/doc-kit': major
---
The React/JSX-based generators (`html` — previously `web` —, `jsx-ast`,
`llms-txt`, `sitemap`, and `orama-db`) now live in the new
-`@nodejs/doc-kit-generator-react` package and are loaded via import specifiers such as
-`@nodejs/doc-kit-generator-react/html`. The corresponding `@nodejs/doc-kit/*`
+`@doc-kit/generator-react` package and are loaded via import specifiers such as
+`@doc-kit/generator-react/html`. The corresponding `@nodejs/doc-kit/*`
package exports have been removed. The `web` generator is renamed to `html`:
the CLI shorthand `web` keeps working as a deprecated alias, but the
configuration key is now `html` instead of `web`.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index faaf19da..8134f1a6 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -78,9 +78,9 @@ holds the shared tooling (linting, formatting, tests, changesets); every
published package lives under `packages/`:
- `packages/core`: [`@nodejs/doc-kit`](packages/core) — the doc-kit engine and CLI
-- `packages/legacy`: [`@nodejs/doc-kit-generator-legacy`](packages/legacy) — the legacy-format generators
+- `packages/legacy`: [`@doc-kit/generator-legacy`](packages/legacy) — the legacy-format generators
- `packages/node`: [`@node-core/doc-kit`](packages/node) — the Node.js-specific generators
-- `packages/react`: [`@nodejs/doc-kit-generator-react`](packages/react) — the React/JSX-based generators
+- `packages/react`: [`@doc-kit/generator-react`](packages/react) — the React/JSX-based generators
Everything else at the root supports the repo rather than shipping to npm:
`docs/` (the reference docs), `www/` (the documentation site), `scripts/` (build
diff --git a/README.md b/README.md
index b24f5c68..706d9072 100644
--- a/README.md
+++ b/README.md
@@ -111,7 +111,7 @@ npx doc-kit generate \
### Redesigned
-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.
+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 [`@doc-kit/generator-react`](packages/react) package, which must be installed alongside this one.
```sh
npx doc-kit generate \
diff --git a/docs/creating-generators.md b/docs/creating-generators.md
index 360a3cad..da2445b4 100644
--- a/docs/creating-generators.md
+++ b/docs/creating-generators.md
@@ -350,7 +350,7 @@ export default {
description: 'Requires all input at once',
- dependsOn: '@nodejs/doc-kit-generator-react/jsx-ast',
+ dependsOn: '@doc-kit/generator-react/jsx-ast',
generate,
};
diff --git a/docs/customization.md b/docs/customization.md
index 92d69b56..5a128617 100644
--- a/docs/customization.md
+++ b/docs/customization.md
@@ -160,7 +160,7 @@ signature parsing while keeping headings, TOC, and sidebar behavior.
Vite builds the site by default, and accepts your plugins and options:
```js
-import { createViteBundler } from '@nodejs/doc-kit-generator-react/html/bundlers/vite';
+import { createViteBundler } from '@doc-kit/generator-react/html/bundlers/vite';
export default {
html: {
diff --git a/docs/generators.md b/docs/generators.md
index 10d19690..e7244d7c 100644
--- a/docs/generators.md
+++ b/docs/generators.md
@@ -8,7 +8,7 @@ npx doc-kit generate -t html -t orama-db -t sitemap -i "docs/**/*.md" -o out
## Built-in generators
-### Web ([`@nodejs/doc-kit-generator-react`](./packages/react.md))
+### Web ([`@doc-kit/generator-react`](./packages/react.md))
| Target | Output |
| -------------------------------------- | -------------------------------------------------------------------- |
@@ -23,7 +23,7 @@ npx doc-kit generate -t html -t orama-db -t sitemap -i "docs/**/*.md" -o out
| -------------------------------------------- | -------------------------------------------------------- |
| [`json-simple`](./generators/json-simple.md) | A simplified JSON rendering of the parsed documentation. |
-### Legacy ([`@nodejs/doc-kit-generator-legacy`](./packages/legacy.md))
+### Legacy ([`@doc-kit/generator-legacy`](./packages/legacy.md))
1:1 matches for Node.js's original documentation tooling, for consumers of
the classic layouts.
diff --git a/package-lock.json b/package-lock.json
index b88fa56f..e2457ebd 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1391,11 +1391,11 @@
"resolved": "packages/core",
"link": true
},
- "node_modules/@nodejs/doc-kit-generator-legacy": {
+ "node_modules/@doc-kit/generator-legacy": {
"resolved": "packages/legacy",
"link": true
},
- "node_modules/@nodejs/doc-kit-generator-react": {
+ "node_modules/@doc-kit/generator-react": {
"resolved": "packages/react",
"link": true
},
@@ -11252,23 +11252,23 @@
},
"peerDependencies": {
"@node-core/doc-kit": "^1.4.3",
- "@nodejs/doc-kit-generator-legacy": "^0.0.0",
- "@nodejs/doc-kit-generator-react": "^0.0.0"
+ "@doc-kit/generator-legacy": "^0.0.0",
+ "@doc-kit/generator-react": "^0.0.0"
},
"peerDependenciesMeta": {
"@node-core/doc-kit": {
"optional": true
},
- "@nodejs/doc-kit-generator-legacy": {
+ "@doc-kit/generator-legacy": {
"optional": true
},
- "@nodejs/doc-kit-generator-react": {
+ "@doc-kit/generator-react": {
"optional": true
}
}
},
"packages/legacy": {
- "name": "@nodejs/doc-kit-generator-legacy",
+ "name": "@doc-kit/generator-legacy",
"version": "0.0.0",
"dependencies": {
"@nodejs/doc-kit": "^0.0.0",
@@ -11288,7 +11288,7 @@
}
},
"packages/react": {
- "name": "@nodejs/doc-kit-generator-react",
+ "name": "@doc-kit/generator-react",
"version": "0.0.0",
"dependencies": {
"@11ty/is-land": "^5.0.1",
diff --git a/packages/core/README.md b/packages/core/README.md
index 341b51b2..d352700a 100644
--- a/packages/core/README.md
+++ b/packages/core/README.md
@@ -13,8 +13,8 @@ installable with `doc-kit install `:
| Package | Generators |
| ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
-| [`@nodejs/doc-kit-generator-react`](https://www.npmjs.com/package/@nodejs/doc-kit-generator-react) | `html` (the modern site), `orama-db`, `llms-txt`, `sitemap` |
-| [`@nodejs/doc-kit-generator-legacy`](https://www.npmjs.com/package/@nodejs/doc-kit-generator-legacy) | `legacy-html`, `legacy-html-all`, `legacy-json`, `legacy-json-all` |
+| [`@doc-kit/generator-react`](https://www.npmjs.com/package/@doc-kit/generator-react) | `html` (the modern site), `orama-db`, `llms-txt`, `sitemap` |
+| [`@doc-kit/generator-legacy`](https://www.npmjs.com/package/@doc-kit/generator-legacy) | `legacy-html`, `legacy-html-all`, `legacy-json`, `legacy-json-all` |
| [`@node-core/doc-kit`](https://www.npmjs.com/package/@node-core/doc-kit) | `man-page`, `api-links`, `addon-verify` (Node.js-specific) |
Custom generators load by import specifier — any module whose default export
diff --git a/packages/core/package.json b/packages/core/package.json
index b1367d06..4bb01670 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -73,17 +73,17 @@
},
"peerDependencies": {
"@node-core/doc-kit": "^1.4.3",
- "@nodejs/doc-kit-generator-legacy": "^0.0.0",
- "@nodejs/doc-kit-generator-react": "^0.0.0"
+ "@doc-kit/generator-legacy": "^0.0.0",
+ "@doc-kit/generator-react": "^0.0.0"
},
"peerDependenciesMeta": {
"@node-core/doc-kit": {
"optional": true
},
- "@nodejs/doc-kit-generator-legacy": {
+ "@doc-kit/generator-legacy": {
"optional": true
},
- "@nodejs/doc-kit-generator-react": {
+ "@doc-kit/generator-react": {
"optional": true
}
}
diff --git a/packages/core/src/generators/index.mjs b/packages/core/src/generators/index.mjs
index fbd742cd..ddb0f60b 100644
--- a/packages/core/src/generators/index.mjs
+++ b/packages/core/src/generators/index.mjs
@@ -11,17 +11,17 @@
*/
export const publicGenerators = {
'json-simple': '@nodejs/doc-kit/json-simple',
- 'legacy-html': '@nodejs/doc-kit-generator-legacy/legacy-html',
- 'legacy-html-all': '@nodejs/doc-kit-generator-legacy/legacy-html-all',
+ 'legacy-html': '@doc-kit/generator-legacy/legacy-html',
+ 'legacy-html-all': '@doc-kit/generator-legacy/legacy-html-all',
'man-page': '@node-core/doc-kit/man-page',
- 'legacy-json': '@nodejs/doc-kit-generator-legacy/legacy-json',
- 'legacy-json-all': '@nodejs/doc-kit-generator-legacy/legacy-json-all',
+ 'legacy-json': '@doc-kit/generator-legacy/legacy-json',
+ 'legacy-json-all': '@doc-kit/generator-legacy/legacy-json-all',
'addon-verify': '@node-core/doc-kit/addon-verify',
'api-links': '@node-core/doc-kit/api-links',
- 'orama-db': '@nodejs/doc-kit-generator-react/orama-db',
- 'llms-txt': '@nodejs/doc-kit-generator-react/llms-txt',
- sitemap: '@nodejs/doc-kit-generator-react/sitemap',
- html: '@nodejs/doc-kit-generator-react/html',
+ 'orama-db': '@doc-kit/generator-react/orama-db',
+ 'llms-txt': '@doc-kit/generator-react/llms-txt',
+ sitemap: '@doc-kit/generator-react/sitemap',
+ html: '@doc-kit/generator-react/html',
};
// These ones are special since they don't produce standard output,
@@ -30,7 +30,7 @@ export const publicGenerators = {
const internalGenerators = {
ast: '@nodejs/doc-kit/ast',
metadata: '@nodejs/doc-kit/metadata',
- 'jsx-ast': '@nodejs/doc-kit-generator-react/jsx-ast',
+ 'jsx-ast': '@doc-kit/generator-react/jsx-ast',
'ast-js': '@nodejs/doc-kit/ast-js',
};
@@ -38,7 +38,7 @@ const internalGenerators = {
// Unlike the maps above, keys here intentionally differ from the generator's
// `name` property.
export const deprecatedGenerators = {
- web: '@nodejs/doc-kit-generator-react/html',
+ web: '@doc-kit/generator-react/html',
};
export const allGenerators = {
diff --git a/packages/legacy/README.md b/packages/legacy/README.md
index 997e840a..5babe38b 100644
--- a/packages/legacy/README.md
+++ b/packages/legacy/README.md
@@ -1,4 +1,4 @@
-# `@nodejs/doc-kit-generator-legacy`
+# `@doc-kit/generator-legacy`
The legacy-format generators for [doc-kit](https://github.com/nodejs/doc-kit):
1:1 matches for the output of Node.js's [original documentation
@@ -8,7 +8,7 @@ that depend on the classic HTML and JSON layouts.
## Install
```sh
-npm install --save-dev @nodejs/doc-kit @nodejs/doc-kit-generator-legacy
+npm install --save-dev @nodejs/doc-kit @doc-kit/generator-legacy
```
Or let doc-kit install it for you:
@@ -34,5 +34,5 @@ npx doc-kit generate -t legacy-html -t legacy-json -i "doc/api/*.md" -o out
Unless you have consumers of these exact formats, prefer the modern
[`html` generator](https://doc-kit.nodejs.org/generators/html) from
-`@nodejs/doc-kit-generator-react`. See the
+`@doc-kit/generator-react`. See the
[doc-kit documentation](https://doc-kit.nodejs.org) for details.
diff --git a/packages/legacy/package.json b/packages/legacy/package.json
index be6f5894..31d32a70 100644
--- a/packages/legacy/package.json
+++ b/packages/legacy/package.json
@@ -1,5 +1,5 @@
{
- "name": "@nodejs/doc-kit-generator-legacy",
+ "name": "@doc-kit/generator-legacy",
"type": "module",
"version": "0.0.0",
"description": "Legacy-format generators for @nodejs/doc-kit: legacy-html, legacy-html-all, legacy-json, and legacy-json-all",
diff --git a/packages/legacy/src/legacy-html-all/index.mjs b/packages/legacy/src/legacy-html-all/index.mjs
index 27bb3b85..295bd539 100644
--- a/packages/legacy/src/legacy-html-all/index.mjs
+++ b/packages/legacy/src/legacy-html-all/index.mjs
@@ -18,7 +18,7 @@ export default {
description:
'Generates the `all.html` file from the `legacy-html` generator, which includes all the modules in one single file',
- dependsOn: '@nodejs/doc-kit-generator-legacy/legacy-html',
+ dependsOn: '@doc-kit/generator-legacy/legacy-html',
defaultConfiguration: {
templatePath: legacyHtml.defaultConfiguration.templatePath,
diff --git a/packages/legacy/src/legacy-json-all/index.mjs b/packages/legacy/src/legacy-json-all/index.mjs
index e92066dd..b388ba82 100644
--- a/packages/legacy/src/legacy-json-all/index.mjs
+++ b/packages/legacy/src/legacy-json-all/index.mjs
@@ -14,7 +14,7 @@ export default {
description:
'Generates the `all.json` file from the `legacy-json` generator, which includes all the modules in one single file.',
- dependsOn: '@nodejs/doc-kit-generator-legacy/legacy-json',
+ dependsOn: '@doc-kit/generator-legacy/legacy-json',
defaultConfiguration: {
minify: false,
diff --git a/packages/react/README.md b/packages/react/README.md
index e21a1fe9..316f56ce 100644
--- a/packages/react/README.md
+++ b/packages/react/README.md
@@ -1,4 +1,4 @@
-# `@nodejs/doc-kit-generator-react`
+# `@doc-kit/generator-react`
The modern web generators for [doc-kit](https://github.com/nodejs/doc-kit):
a server-rendered, client-hydrated documentation site with search, plus the
@@ -7,7 +7,7 @@ machine-readable formats that usually accompany one.
## Install
```sh
-npm install --save-dev @nodejs/doc-kit @nodejs/doc-kit-generator-react
+npm install --save-dev @nodejs/doc-kit @doc-kit/generator-react
```
Or let doc-kit install it for you:
diff --git a/packages/react/package.json b/packages/react/package.json
index 68ccf8dc..99742ce1 100644
--- a/packages/react/package.json
+++ b/packages/react/package.json
@@ -1,5 +1,5 @@
{
- "name": "@nodejs/doc-kit-generator-react",
+ "name": "@doc-kit/generator-react",
"type": "module",
"version": "0.0.0",
"description": "React/JSX-based generators for @nodejs/doc-kit: html, jsx-ast, llms-txt, sitemap, and orama-db",
diff --git a/packages/react/src/html/README.md b/packages/react/src/html/README.md
index ff6b95db..5dddd652 100644
--- a/packages/react/src/html/README.md
+++ b/packages/react/src/html/README.md
@@ -236,7 +236,7 @@ directly and pass Vite's `UserConfig` to it:
```js
// doc-kit.config.mjs
-import { createViteBundler } from '@nodejs/doc-kit-generator-react/html/bundlers/vite';
+import { createViteBundler } from '@doc-kit/generator-react/html/bundlers/vite';
import myVitePlugin from './my-vite-plugin.mjs';
export default {
diff --git a/packages/react/src/html/index.mjs b/packages/react/src/html/index.mjs
index 461e6387..8f7d77ab 100644
--- a/packages/react/src/html/index.mjs
+++ b/packages/react/src/html/index.mjs
@@ -28,7 +28,7 @@ export default {
description: 'Generates HTML/CSS/JS bundles from JSX AST entries',
- dependsOn: '@nodejs/doc-kit-generator-react/jsx-ast',
+ dependsOn: '@doc-kit/generator-react/jsx-ast',
/**
* @param {import('@nodejs/doc-kit/utils/configuration/types').Configuration} config
diff --git a/www/doc-kit.config.mjs b/www/doc-kit.config.mjs
index 14e3164e..31919db6 100644
--- a/www/doc-kit.config.mjs
+++ b/www/doc-kit.config.mjs
@@ -106,11 +106,11 @@ export default {
items: [
{ label: '`@nodejs/doc-kit`', link: '/packages/core' },
{
- label: '`@nodejs/doc-kit-generator-react`',
+ label: '`@doc-kit/generator-react`',
link: '/packages/react',
},
{
- label: '`@nodejs/doc-kit-generator-legacy`',
+ label: '`@doc-kit/generator-legacy`',
link: '/packages/legacy',
},
{ label: '`@node-core/doc-kit`', link: '/packages/node' },
diff --git a/www/pages/getting-started.md b/www/pages/getting-started.md
index 02996e4b..a15a340b 100644
--- a/www/pages/getting-started.md
+++ b/www/pages/getting-started.md
@@ -3,7 +3,7 @@
First, install doc-kit and a generator, like so:
```bash
-npm install --save-dev @nodejs/doc-kit @nodejs/doc-kit-generator-react
+npm install --save-dev @nodejs/doc-kit @doc-kit/generator-react
```
Then, create your configuration file set up for your project:
From 301f1a6664e8080d9d800fb415bf448987f860c3 Mon Sep 17 00:00:00 2001
From: avivkeller
Date: Fri, 7 Aug 2026 12:04:37 -0400
Subject: [PATCH 2/4] fixup!
---
package-lock.json | 26 +++++++++++++-------------
packages/core/README.md | 6 +++---
2 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index e2457ebd..2c5245d8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -415,6 +415,14 @@
"url": "https://github.com/prettier/prettier?sponsor=1"
}
},
+ "node_modules/@doc-kit/generator-legacy": {
+ "resolved": "packages/legacy",
+ "link": true
+ },
+ "node_modules/@doc-kit/generator-react": {
+ "resolved": "packages/react",
+ "link": true
+ },
"node_modules/@emnapi/core": {
"version": "1.11.1",
"resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.1.tgz",
@@ -1391,14 +1399,6 @@
"resolved": "packages/core",
"link": true
},
- "node_modules/@doc-kit/generator-legacy": {
- "resolved": "packages/legacy",
- "link": true
- },
- "node_modules/@doc-kit/generator-react": {
- "resolved": "packages/react",
- "link": true
- },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -11251,19 +11251,19 @@
"doc-kit": "bin/cli.mjs"
},
"peerDependencies": {
- "@node-core/doc-kit": "^1.4.3",
"@doc-kit/generator-legacy": "^0.0.0",
- "@doc-kit/generator-react": "^0.0.0"
+ "@doc-kit/generator-react": "^0.0.0",
+ "@node-core/doc-kit": "^1.4.3"
},
"peerDependenciesMeta": {
- "@node-core/doc-kit": {
- "optional": true
- },
"@doc-kit/generator-legacy": {
"optional": true
},
"@doc-kit/generator-react": {
"optional": true
+ },
+ "@node-core/doc-kit": {
+ "optional": true
}
}
},
diff --git a/packages/core/README.md b/packages/core/README.md
index d352700a..12250706 100644
--- a/packages/core/README.md
+++ b/packages/core/README.md
@@ -11,11 +11,11 @@ Output formats are provided by generators. This package ships the shared
pipeline stages and `json-simple`; the rest come from companion packages,
installable with `doc-kit install `:
-| Package | Generators |
-| ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
+| Package | Generators |
+| -------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| [`@doc-kit/generator-react`](https://www.npmjs.com/package/@doc-kit/generator-react) | `html` (the modern site), `orama-db`, `llms-txt`, `sitemap` |
| [`@doc-kit/generator-legacy`](https://www.npmjs.com/package/@doc-kit/generator-legacy) | `legacy-html`, `legacy-html-all`, `legacy-json`, `legacy-json-all` |
-| [`@node-core/doc-kit`](https://www.npmjs.com/package/@node-core/doc-kit) | `man-page`, `api-links`, `addon-verify` (Node.js-specific) |
+| [`@node-core/doc-kit`](https://www.npmjs.com/package/@node-core/doc-kit) | `man-page`, `api-links`, `addon-verify` (Node.js-specific) |
Custom generators load by import specifier — any module whose default export
is a generator works as a `--target`.
From 352f11e55321cd59f0730008cafdae4eca61cd6e Mon Sep 17 00:00:00 2001
From: avivkeller
Date: Fri, 7 Aug 2026 12:35:04 -0400
Subject: [PATCH 3/4] fixup!
---
.changeset/configurable-navigation.md | 2 +-
.changeset/curvy-items-smile.md | 2 +-
.../did-you-know-that-the-world-is-round.md | 2 +-
.changeset/display-name-type-unions.md | 2 +-
.changeset/doc-kit-scope-move.md | 12 ++---
.changeset/fix-relative-parent-path.md | 2 +-
.changeset/legacy-kitten-package.md | 4 +-
.changeset/monorepo-layout.md | 2 +-
.changeset/node-kitten-package.md | 2 +-
.changeset/opt-out-banners.md | 2 +-
.changeset/plain-defaults.md | 2 +-
.changeset/react-kitten-package.md | 4 +-
.changeset/riscv64-warning-spacing.md | 2 +-
.changeset/short-deprecation-links.md | 2 +-
.changeset/spaced-union-types.md | 2 +-
.changeset/specifier-generator-loading.md | 2 +-
.changeset/swc.md | 2 +-
.changeset/tidy-deprecations-smile.md | 2 +-
.changeset/tidy-donuts-search.md | 2 +-
.changeset/vite-web-generator.md | 2 +-
.changeset/yes-i-did-know-that-thank-you.md | 2 +-
.github/workflows/generate.yml | 2 +-
.github/workflows/publish.yml | 2 +-
CONTRIBUTING.md | 13 +++---
README.md | 12 ++---
docs/commands.md | 10 ++---
docs/comparators.md | 2 +-
docs/creating-generators.md | 14 +++---
docs/generators.md | 2 +-
docs/specification.md | 2 +-
package-lock.json | 39 ++++++++++------
package.json | 6 +--
packages/cli/README.md | 45 +++++++++++++++++++
packages/{core => cli}/bin/cli.mjs | 6 +--
.../{core => cli}/bin/commands/generate.mjs | 10 ++---
packages/{core => cli}/bin/commands/index.mjs | 0
packages/{core => cli}/bin/utils.mjs | 2 +-
packages/cli/package.json | 28 ++++++++++++
packages/core/CHANGELOG.md | 2 +-
packages/core/README.md | 23 +++++-----
packages/core/package.json | 12 ++---
packages/core/src/generators/index.mjs | 8 ++--
.../core/src/generators/json-simple/index.mjs | 2 +-
.../core/src/generators/metadata/index.mjs | 2 +-
packages/core/src/generators/types.d.ts | 2 +-
packages/legacy/README.md | 2 +-
packages/legacy/package.json | 4 +-
.../legacy/src/legacy-html-all/generate.mjs | 6 +--
packages/legacy/src/legacy-html/generate.mjs | 10 ++---
packages/legacy/src/legacy-html/index.mjs | 4 +-
packages/legacy/src/legacy-html/types.d.ts | 2 +-
.../utils/__tests__/buildContent.test.mjs | 2 +-
.../src/legacy-html/utils/buildContent.mjs | 20 ++++-----
.../src/legacy-html/utils/buildDropdowns.mjs | 8 ++--
.../legacy-html/utils/buildExtraContent.mjs | 6 +--
.../utils/replaceTemplateValues.mjs | 4 +-
.../legacy/src/legacy-html/utils/slugger.mjs | 2 +-
.../src/legacy-html/utils/tableOfContents.mjs | 8 ++--
.../legacy/src/legacy-json-all/generate.mjs | 2 +-
packages/legacy/src/legacy-json/generate.mjs | 6 +--
packages/legacy/src/legacy-json/index.mjs | 2 +-
packages/legacy/src/legacy-json/types.d.ts | 4 +-
.../src/legacy-json/utils/buildHierarchy.mjs | 4 +-
.../src/legacy-json/utils/buildSection.mjs | 22 ++++-----
packages/node/README.md | 2 +-
packages/node/package.json | 4 +-
packages/node/src/addon-verify/generate.mjs | 4 +-
packages/node/src/addon-verify/index.mjs | 2 +-
packages/node/src/addon-verify/types.d.ts | 2 +-
.../src/api-links/__tests__/fixtures.test.mjs | 10 ++---
packages/node/src/api-links/generate.mjs | 6 +--
packages/node/src/api-links/index.mjs | 4 +-
packages/node/src/config/index.mjs | 4 +-
packages/node/src/man-page/generate.mjs | 8 ++--
packages/node/src/man-page/index.mjs | 2 +-
packages/node/src/man-page/template.1 | 2 +-
packages/node/src/man-page/types.d.ts | 2 +-
.../node/src/man-page/utils/converter.mjs | 4 +-
packages/react/README.md | 2 +-
packages/react/package.json | 4 +-
.../src/html/__tests__/generate.test.mjs | 2 +-
.../src/html/bundlers/__tests__/vite.test.mjs | 2 +-
packages/react/src/html/bundlers/vite.mjs | 2 +-
packages/react/src/html/generate.mjs | 2 +-
packages/react/src/html/index.mjs | 2 +-
packages/react/src/html/types.d.ts | 2 +-
packages/react/src/html/ui/types.d.ts | 4 +-
.../src/html/ui/utils/relativeOrAbsolute.mjs | 2 +-
.../src/html/utils/__tests__/config.test.mjs | 2 +-
.../src/html/utils/__tests__/copying.test.mjs | 2 +-
.../html/utils/__tests__/processing.test.mjs | 2 +-
.../__tests__/relativeOrAbsolute.test.mjs | 2 +-
packages/react/src/html/utils/config.mjs | 8 ++--
packages/react/src/html/utils/copying.mjs | 2 +-
packages/react/src/html/utils/generate.mjs | 2 +-
packages/react/src/html/utils/processing.mjs | 16 +++----
.../src/html/utils/relativeOrAbsolute.mjs | 4 +-
.../src/jsx-ast/__tests__/generate.test.mjs | 2 +-
packages/react/src/jsx-ast/generate.mjs | 6 +--
packages/react/src/jsx-ast/index.mjs | 2 +-
packages/react/src/jsx-ast/types.d.ts | 2 +-
.../utils/__tests__/buildContent.test.mjs | 2 +-
.../react/src/jsx-ast/utils/buildBarProps.mjs | 10 ++---
.../react/src/jsx-ast/utils/buildContent.mjs | 32 ++++++-------
.../src/jsx-ast/utils/getSortedHeadNodes.mjs | 8 ++--
.../react/src/jsx-ast/utils/overloads.mjs | 8 ++--
packages/react/src/jsx-ast/utils/remark.mjs | 6 +--
.../react/src/jsx-ast/utils/signature.mjs | 16 +++----
.../react/src/jsx-ast/utils/synthetic/all.mjs | 2 +-
.../src/jsx-ast/utils/synthetic/index.mjs | 4 +-
packages/react/src/jsx-ast/utils/types.mjs | 6 +--
packages/react/src/llms-txt/generate.mjs | 6 +--
packages/react/src/llms-txt/index.mjs | 2 +-
packages/react/src/llms-txt/types.d.ts | 2 +-
.../src/llms-txt/utils/buildApiDocLink.mjs | 10 ++---
packages/react/src/orama-db/generate.mjs | 8 ++--
packages/react/src/orama-db/index.mjs | 2 +-
packages/react/src/orama-db/types.d.ts | 2 +-
packages/react/src/sitemap/generate.mjs | 6 +--
packages/react/src/sitemap/index.mjs | 2 +-
packages/react/src/sitemap/types.d.ts | 2 +-
.../sitemap/utils/createPageSitemapEntry.mjs | 6 +--
scripts/vercel-build.sh | 2 +-
scripts/vercel-docs-build.sh | 2 +-
www/doc-kit.config.mjs | 3 +-
www/pages/getting-started.md | 6 +--
126 files changed, 394 insertions(+), 313 deletions(-)
create mode 100644 packages/cli/README.md
rename packages/{core => cli}/bin/cli.mjs (81%)
rename packages/{core => cli}/bin/commands/generate.mjs (92%)
rename packages/{core => cli}/bin/commands/index.mjs (100%)
rename packages/{core => cli}/bin/utils.mjs (88%)
create mode 100644 packages/cli/package.json
diff --git a/.changeset/configurable-navigation.md b/.changeset/configurable-navigation.md
index 869cdc5e..90876a5f 100644
--- a/.changeset/configurable-navigation.md
+++ b/.changeset/configurable-navigation.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Add `web.navigation`, which supplies the sidebar groups (`navigation.sidebar`)
diff --git a/.changeset/curvy-items-smile.md b/.changeset/curvy-items-smile.md
index 7b9492b4..2c851b96 100644
--- a/.changeset/curvy-items-smile.md
+++ b/.changeset/curvy-items-smile.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': minor
+'@doc-kit/core': minor
---
Discover and load configuration files with `cosmiconfig`.
diff --git a/.changeset/did-you-know-that-the-world-is-round.md b/.changeset/did-you-know-that-the-world-is-round.md
index b890a4ab..20eba00a 100644
--- a/.changeset/did-you-know-that-the-world-is-round.md
+++ b/.changeset/did-you-know-that-the-world-is-round.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Close Orama search when the target link is on the same page
diff --git a/.changeset/display-name-type-unions.md b/.changeset/display-name-type-unions.md
index f4b2cdb1..f8687c82 100644
--- a/.changeset/display-name-type-unions.md
+++ b/.changeset/display-name-type-unions.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Resolve unions and arrays of display-name types (`{HTTP/2 Headers Object | vm.Module}`, `{HTTP/2 Headers Object[]}`), and stop capturing prose such as `U+007B ({), and U+007D (}).` as a type annotation.
diff --git a/.changeset/doc-kit-scope-move.md b/.changeset/doc-kit-scope-move.md
index dd10cf1a..a2caef7d 100644
--- a/.changeset/doc-kit-scope-move.md
+++ b/.changeset/doc-kit-scope-move.md
@@ -1,8 +1,10 @@
---
-'@nodejs/doc-kit': major
+'@doc-kit/core': major
+'@doc-kit/cli': major
---
-The doc-kit engine and CLI, previously published as `@node-core/doc-kit`,
-are now published as `@nodejs/doc-kit`. The `@node-core/doc-kit` name now
-contains only the Node.js-specific generators (`api-links`, `addon-verify`,
-and `man-page`).
+The doc-kit engine and CLI, previously published together as
+`@node-core/doc-kit`, are now published as two packages: `@doc-kit/core`
+(the engine) and `@doc-kit/cli` (the `doc-kit` command-line interface).
+The `@node-core/doc-kit` name now contains only the Node.js-specific
+generators (`api-links`, `addon-verify`, and `man-page`).
diff --git a/.changeset/fix-relative-parent-path.md b/.changeset/fix-relative-parent-path.md
index 7745c39b..c8d3c1e0 100644
--- a/.changeset/fix-relative-parent-path.md
+++ b/.changeset/fix-relative-parent-path.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Fix `relative()` URL resolution when the target path is a prefix of the current
diff --git a/.changeset/legacy-kitten-package.md b/.changeset/legacy-kitten-package.md
index 9003bb58..099c9ae6 100644
--- a/.changeset/legacy-kitten-package.md
+++ b/.changeset/legacy-kitten-package.md
@@ -1,11 +1,11 @@
---
'@doc-kit/generator-legacy': major
-'@nodejs/doc-kit': major
+'@doc-kit/core': major
---
The legacy-format generators (`legacy-html`, `legacy-html-all`,
`legacy-json`, and `legacy-json-all`) now live in the new
`@doc-kit/generator-legacy` package and are loaded via import specifiers such
as `@doc-kit/generator-legacy/legacy-html`. The corresponding
-`@nodejs/doc-kit/*` package exports have been removed. The CLI shorthand
+`@doc-kit/core/*` package exports have been removed. The CLI shorthand
names are unchanged.
diff --git a/.changeset/monorepo-layout.md b/.changeset/monorepo-layout.md
index 603f5bc6..fdaa6c35 100644
--- a/.changeset/monorepo-layout.md
+++ b/.changeset/monorepo-layout.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Moved the package into a `packages/core` workspace.
diff --git a/.changeset/node-kitten-package.md b/.changeset/node-kitten-package.md
index 1fa974c2..ca0f1335 100644
--- a/.changeset/node-kitten-package.md
+++ b/.changeset/node-kitten-package.md
@@ -1,6 +1,6 @@
---
'@node-core/doc-kit': major
-'@nodejs/doc-kit': major
+'@doc-kit/core': major
---
The Node.js-specific generators (`api-links`, `addon-verify`, and
diff --git a/.changeset/opt-out-banners.md b/.changeset/opt-out-banners.md
index 53f9497a..78a19bf0 100644
--- a/.changeset/opt-out-banners.md
+++ b/.changeset/opt-out-banners.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': minor
+'@doc-kit/core': minor
---
Add banner opt-out
diff --git a/.changeset/plain-defaults.md b/.changeset/plain-defaults.md
index 104d40ce..804c0f90 100644
--- a/.changeset/plain-defaults.md
+++ b/.changeset/plain-defaults.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
'@doc-kit/generator-react': minor
---
diff --git a/.changeset/react-kitten-package.md b/.changeset/react-kitten-package.md
index 0076c254..7caa5714 100644
--- a/.changeset/react-kitten-package.md
+++ b/.changeset/react-kitten-package.md
@@ -1,12 +1,12 @@
---
'@doc-kit/generator-react': minor
-'@nodejs/doc-kit': major
+'@doc-kit/core': major
---
The React/JSX-based generators (`html` — previously `web` —, `jsx-ast`,
`llms-txt`, `sitemap`, and `orama-db`) now live in the new
`@doc-kit/generator-react` package and are loaded via import specifiers such as
-`@doc-kit/generator-react/html`. The corresponding `@nodejs/doc-kit/*`
+`@doc-kit/generator-react/html`. The corresponding `@doc-kit/core/*`
package exports have been removed. The `web` generator is renamed to `html`:
the CLI shorthand `web` keeps working as a deprecated alias, but the
configuration key is now `html` instead of `web`.
diff --git a/.changeset/riscv64-warning-spacing.md b/.changeset/riscv64-warning-spacing.md
index 4b60d25e..7d1b36f7 100644
--- a/.changeset/riscv64-warning-spacing.md
+++ b/.changeset/riscv64-warning-spacing.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Fix missing spaces in the riscv64 multithreading warning message, which
diff --git a/.changeset/short-deprecation-links.md b/.changeset/short-deprecation-links.md
index 7b38dc5c..42a130af 100644
--- a/.changeset/short-deprecation-links.md
+++ b/.changeset/short-deprecation-links.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Use short `DEP` codes for deprecation heading anchors.
diff --git a/.changeset/spaced-union-types.md b/.changeset/spaced-union-types.md
index 1498134d..d9419214 100644
--- a/.changeset/spaced-union-types.md
+++ b/.changeset/spaced-union-types.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Space union separators in type annotation values (`{string|URL}` is now rendered as `string | URL`).
diff --git a/.changeset/specifier-generator-loading.md b/.changeset/specifier-generator-loading.md
index e6ee7d58..00168cc8 100644
--- a/.changeset/specifier-generator-loading.md
+++ b/.changeset/specifier-generator-loading.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': minor
+'@doc-kit/core': minor
---
Generators are now loaded dynamically by import specifier instead of a static
diff --git a/.changeset/swc.md b/.changeset/swc.md
index ec6c6c6e..c24f650a 100644
--- a/.changeset/swc.md
+++ b/.changeset/swc.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Switches `oxc-parser` for `@swc/wasm`, since `oxc-parser` does not provide the needed bindings.
diff --git a/.changeset/tidy-deprecations-smile.md b/.changeset/tidy-deprecations-smile.md
index fa83f542..9b034473 100644
--- a/.changeset/tidy-deprecations-smile.md
+++ b/.changeset/tidy-deprecations-smile.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Preserve deprecation codes in generated table-of-contents labels.
diff --git a/.changeset/tidy-donuts-search.md b/.changeset/tidy-donuts-search.md
index 30e045d4..b1f3788b 100644
--- a/.changeset/tidy-donuts-search.md
+++ b/.changeset/tidy-donuts-search.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Sync the URL hash when following same-page search hits
diff --git a/.changeset/vite-web-generator.md b/.changeset/vite-web-generator.md
index 74f4838b..d37a0138 100644
--- a/.changeset/vite-web-generator.md
+++ b/.changeset/vite-web-generator.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': minor
+'@doc-kit/core': minor
---
Make the `web` generator bundler-neutral through a custom adapter contract,
diff --git a/.changeset/yes-i-did-know-that-thank-you.md b/.changeset/yes-i-did-know-that-thank-you.md
index 370e2bef..7431cdaa 100644
--- a/.changeset/yes-i-did-know-that-thank-you.md
+++ b/.changeset/yes-i-did-know-that-thank-you.md
@@ -1,5 +1,5 @@
---
-'@nodejs/doc-kit': patch
+'@doc-kit/core': patch
---
Render markdown `code` snippets in the sidebar
diff --git a/.github/workflows/generate.yml b/.github/workflows/generate.yml
index 214ae5de..725fb117 100644
--- a/.github/workflows/generate.yml
+++ b/.github/workflows/generate.yml
@@ -149,7 +149,7 @@ jobs:
/usr/bin/time \
--output out/benchmark.json \
--format '{"elapsedSeconds": %e, "userCpuSeconds": %U, "systemCpuSeconds": %S, "maxRssKiB": %M}' \
- node packages/core/bin/cli.mjs generate \
+ node packages/cli/bin/cli.mjs generate \
-t ${{ matrix.target }} \
-i "${{ matrix.input }}" \
-o out \
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index 74e7ee8a..d345f0be 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -58,7 +58,7 @@ jobs:
SLACK_ICON: https://github.com/nodejs.png?size=48
SLACK_TITLE: ':rocket: doc-kit Packages Published'
SLACK_MESSAGE: |
- :package: *Packages*: `nodejs/doc-kit` workspace ()
+ :package: *Packages*: `nodejs/doc-kit` workspace ()
:bust_in_silhouette: *Published by*: ${{ github.triggering_actor }}
:octocat: *Commit*:
SLACK_USERNAME: nodejs-bot
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8134f1a6..f70d875e 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,6 +1,6 @@
-# `@nodejs/doc-kit` Contributing Guide
+# `doc-kit` Contributing Guide
-Thank you for your interest in contributing to the `@nodejs/doc-kit` project! We welcome contributions from everyone, and we appreciate your help in making this project better.
+Thank you for your interest in contributing to the `doc-kit` project! We welcome contributions from everyone, and we appreciate your help in making this project better.
## Table of Contents
@@ -29,7 +29,7 @@ Thank you for your interest in contributing to the `@nodejs/doc-kit` project! We
## Getting Started
-The steps below will give you a general idea of how to prepare your local environment for the `@nodejs/doc-kit` project and general steps for getting things done and landing your contribution.
+The steps below will give you a general idea of how to prepare your local environment for the `doc-kit` project and general steps for getting things done and landing your contribution.
### Prerequisites
@@ -77,7 +77,8 @@ This repository is an npm workspaces monorepo. The root package is private and
holds the shared tooling (linting, formatting, tests, changesets); every
published package lives under `packages/`:
-- `packages/core`: [`@nodejs/doc-kit`](packages/core) — the doc-kit engine and CLI
+- `packages/cli`: [`@doc-kit/cli`](packages/cli) — the doc-kit command-line interface
+- `packages/core`: [`@doc-kit/core`](packages/core) — the doc-kit engine
- `packages/legacy`: [`@doc-kit/generator-legacy`](packages/legacy) — the legacy-format generators
- `packages/node`: [`@node-core/doc-kit`](packages/node) — the Node.js-specific generators
- `packages/react`: [`@doc-kit/generator-react`](packages/react) — the React/JSX-based generators
@@ -106,7 +107,7 @@ and comparison helpers), and `e2e/` (Playwright tests).
For fast iteration during development, target a single Markdown file instead of all API docs:
```bash
- node packages/core/bin/cli.mjs generate \
+ node packages/cli/bin/cli.mjs generate \
-t legacy-html \
-i ../node/doc/api/fs.md \
-o out \
@@ -127,7 +128,7 @@ and comparison helpers), and `e2e/` (Playwright tests).
Add `--log-level debug` before the `generate` subcommand to see the full pipeline trace:
```bash
- node packages/core/bin/cli.mjs --log-level debug generate -t legacy-html -i ../node/doc/api/fs.md -o out
+ node packages/cli/bin/cli.mjs --log-level debug generate -t legacy-html -i ../node/doc/api/fs.md -o out
```
> [!TIP]
diff --git a/README.md b/README.md
index 706d9072..fcf1db36 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@
- @nodejs/doc-kit is a tool to generate API documentation of Node.js. See this issue for more information.
+ doc-kit is a tool to generate API documentation of Node.js. See this issue for more information.
@@ -40,11 +40,11 @@ $ npx doc-kit --help
```
```sh
-$ node packages/core/bin/cli.mjs --help
+$ node packages/cli/bin/cli.mjs --help
```
```
-Usage: @nodejs/doc-kit [options] [command]
+Usage: doc-kit [options] [command]
CLI tool to generate the Node.js API documentation
@@ -67,7 +67,7 @@ Running `generate` without the required values exits with an error pointing you
to the help output.
```
-Usage: @nodejs/doc-kit generate [options]
+Usage: doc-kit generate [options]
Generate API docs
@@ -78,8 +78,8 @@ Options:
(json-simple, legacy-html, legacy-html-all,
man-page, legacy-json, legacy-json-all,
addon-verify, api-links, orama-db, llms-txt,
- sitemap, web) or an import specifier for a custom
- generator
+ sitemap, html) or an import specifier for a
+ custom generator
--ignore Ignore file patterns (glob)
-o, --output The output directory
-p, --threads Number of threads to use (minimum: 1)
diff --git a/docs/commands.md b/docs/commands.md
index 21785977..3189257b 100644
--- a/docs/commands.md
+++ b/docs/commands.md
@@ -24,11 +24,11 @@ Each command consists of:
### Step 1: Create the Command File
-Create a new file in `packages/core/bin/commands/` with your command name:
+Create a new file in `packages/cli/bin/commands/` with your command name:
```javascript
-// packages/core/bin/commands/my-command.mjs
-import logger from '../../src/logger/index.mjs';
+// packages/cli/bin/commands/my-command.mjs
+import logger from '@doc-kit/core/logger/index.mjs';
/**
* @type {import('./types').Command}
@@ -53,7 +53,7 @@ export default {
### Step 2: Register the Command
-Add your command to the exports in `packages/core/bin/commands/index.mjs`:
+Add your command to the exports in `packages/cli/bin/commands/index.mjs`:
```javascript
import generate from './generate.mjs';
@@ -67,7 +67,7 @@ export default [
### Step 3: Update CLI Entry Point
-The CLI in `packages/core/bin/cli.mjs` automatically loads commands from `packages/core/bin/commands/index.mjs`, so no changes are needed there if you followed step 2.
+The CLI in `packages/cli/bin/cli.mjs` automatically loads commands from `packages/cli/bin/commands/index.mjs`, so no changes are needed there if you followed step 2.
## Command Options
diff --git a/docs/comparators.md b/docs/comparators.md
index 1cafcd52..435989c4 100644
--- a/docs/comparators.md
+++ b/docs/comparators.md
@@ -1,6 +1,6 @@
# Creating Comparators
-This guide explains how to create build comparison scripts for `@nodejs/doc-kit`. Comparators help identify differences between documentation builds, useful for CI/CD and regression testing.
+This guide explains how to create build comparison scripts for `@doc-kit/core`. Comparators help identify differences between documentation builds, useful for CI/CD and regression testing.
## Comparator Concepts
diff --git a/docs/creating-generators.md b/docs/creating-generators.md
index da2445b4..46100e85 100644
--- a/docs/creating-generators.md
+++ b/docs/creating-generators.md
@@ -1,6 +1,6 @@
# Creating Generators
-This guide explains how to create new documentation generators for `@nodejs/doc-kit`.
+This guide explains how to create new documentation generators for `@doc-kit/core`.
## Generator Concepts
@@ -87,7 +87,7 @@ export default {
// This generator depends on the metadata generator. Dependencies are
// declared as import specifiers, so they can live in any package.
- dependsOn: '@nodejs/doc-kit/metadata',
+ dependsOn: '@doc-kit/core/metadata',
defaultConfiguration: {
// If your generator supports a custom configuration, define the defaults here
@@ -168,8 +168,8 @@ the import specifier it resolves to:
```javascript
export const publicGenerators = {
- 'json-simple': '@nodejs/doc-kit/json-simple',
- 'my-format': '@nodejs/doc-kit/my-format', // Add this
+ 'json-simple': '@doc-kit/core/json-simple',
+ 'my-format': '@doc-kit/core/my-format', // Add this
// ... other generators
};
```
@@ -196,7 +196,7 @@ export default {
description: 'Processes data in parallel',
- dependsOn: '@nodejs/doc-kit/metadata',
+ dependsOn: '@doc-kit/core/metadata',
// Indicates this generator has a processChunk implementation
hasParallelProcessor: true,
@@ -291,7 +291,7 @@ export default {
description: 'Streams results as they are ready',
- dependsOn: '@nodejs/doc-kit/metadata',
+ dependsOn: '@doc-kit/core/metadata',
hasParallelProcessor: true,
@@ -395,7 +395,7 @@ export default {
// This generator requires the metadata generator's output. The dependency
// is an import specifier, so it may point at any installed package.
- dependsOn: '@nodejs/doc-kit/metadata',
+ dependsOn: '@doc-kit/core/metadata',
// ... other metadata
diff --git a/docs/generators.md b/docs/generators.md
index e7244d7c..624c6150 100644
--- a/docs/generators.md
+++ b/docs/generators.md
@@ -17,7 +17,7 @@ npx doc-kit generate -t html -t orama-db -t sitemap -i "docs/**/*.md" -o out
| [`llms-txt`](./generators/llms-txt.md) | An [`llms.txt`](https://llmstxt.org/) index for language models. |
| [`sitemap`](./generators/sitemap.md) | A `sitemap.xml` for search engines. |
-### JSON ([`@nodejs/doc-kit`](./packages/core.md))
+### JSON ([`@doc-kit/core`](./packages/core.md))
| Target | Output |
| -------------------------------------------- | -------------------------------------------------------- |
diff --git a/docs/specification.md b/docs/specification.md
index a1f75ad5..0b5b11c9 100644
--- a/docs/specification.md
+++ b/docs/specification.md
@@ -5,7 +5,7 @@
**Authored By**: Aviv Keller ()
This document specifies the Markdown format consumed by
-[`@nodejs/doc-kit`][doc-kit]. It defines the structural, syntactic, and
+[`@doc-kit/core`][doc-kit]. It defines the structural, syntactic, and
semantic rules that documents MUST follow to be correctly parsed. The format
is a strict superset of [GitHub Flavored Markdown][gfm] (which itself is a
strict superset of [CommonMark][commonmark]), adding conventions for API
diff --git a/package-lock.json b/package-lock.json
index 2c5245d8..05d98aff 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,11 +1,11 @@
{
- "name": "@nodejs/doc-kit-monorepo",
+ "name": "@doc-kit/core-monorepo",
"version": "1.4.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
- "name": "@nodejs/doc-kit-monorepo",
+ "name": "@doc-kit/core-monorepo",
"workspaces": [
"packages/*"
],
@@ -415,6 +415,14 @@
"url": "https://github.com/prettier/prettier?sponsor=1"
}
},
+ "node_modules/@doc-kit/cli": {
+ "resolved": "packages/cli",
+ "link": true
+ },
+ "node_modules/@doc-kit/core": {
+ "resolved": "packages/core",
+ "link": true
+ },
"node_modules/@doc-kit/generator-legacy": {
"resolved": "packages/legacy",
"link": true
@@ -1395,10 +1403,6 @@
"node": ">=20"
}
},
- "node_modules/@nodejs/doc-kit": {
- "resolved": "packages/core",
- "link": true
- },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -11213,8 +11217,19 @@
"url": "https://github.com/sponsors/wooorm"
}
},
+ "packages/cli": {
+ "name": "@doc-kit/cli",
+ "version": "0.0.0",
+ "dependencies": {
+ "@doc-kit/core": "^0.0.0",
+ "commander": "^15.0.0"
+ },
+ "bin": {
+ "doc-kit": "bin/cli.mjs"
+ }
+ },
"packages/core": {
- "name": "@nodejs/doc-kit",
+ "name": "@doc-kit/core",
"version": "0.0.0",
"dependencies": {
"@actions/core": "^3.0.0",
@@ -11222,7 +11237,6 @@
"@swc/html-wasm": "^1.15.46",
"@swc/wasm": "^1.15.46",
"acorn": "^8.17.0",
- "commander": "^15.0.0",
"cosmiconfig": "^9.0.2",
"dedent": "^1.7.2",
"github-slugger": "^2.0.0",
@@ -11247,9 +11261,6 @@
"unist-util-visit": "^5.1.0",
"yaml": "^2.9.0"
},
- "bin": {
- "doc-kit": "bin/cli.mjs"
- },
"peerDependencies": {
"@doc-kit/generator-legacy": "^0.0.0",
"@doc-kit/generator-react": "^0.0.0",
@@ -11271,7 +11282,7 @@
"name": "@doc-kit/generator-legacy",
"version": "0.0.0",
"dependencies": {
- "@nodejs/doc-kit": "^0.0.0",
+ "@doc-kit/core": "^0.0.0",
"hastscript": "^9.0.1",
"unist-builder": "^4.0.0",
"unist-util-visit": "^5.1.0"
@@ -11281,7 +11292,7 @@
"name": "@node-core/doc-kit",
"version": "1.4.3",
"dependencies": {
- "@nodejs/doc-kit": "^0.0.0",
+ "@doc-kit/core": "^0.0.0",
"dedent": "^1.7.2",
"estree-util-visit": "^2.0.0",
"unist-util-visit": "^5.1.0"
@@ -11292,12 +11303,12 @@
"version": "0.0.0",
"dependencies": {
"@11ty/is-land": "^5.0.1",
+ "@doc-kit/core": "^0.0.0",
"@fontsource-variable/open-sans": "^5.3.0",
"@fontsource/ibm-plex-mono": "^5.3.0",
"@heroicons/react": "^2.2.0",
"@node-core/rehype-shiki": "^1.4.3",
"@node-core/ui-components": "^1.7.4",
- "@nodejs/doc-kit": "^0.0.0",
"@orama/orama": "^3.1.18",
"@orama/ui": "^1.5.4",
"estree-util-to-js": "^2.0.0",
diff --git a/package.json b/package.json
index 5bb1e54f..85fcca92 100644
--- a/package.json
+++ b/package.json
@@ -1,5 +1,5 @@
{
- "name": "@nodejs/doc-kit-monorepo",
+ "name": "@doc-kit/core-monorepo",
"private": true,
"type": "module",
"workspaces": [
@@ -21,8 +21,8 @@
"test:watch": "node --test --experimental-test-module-mocks --watch \"packages/*/src/**/*.test.mjs\" \"scripts/**/*.test.mjs\"",
"test:e2e": "playwright test",
"prepare": "husky || exit 0",
- "run": "node packages/core/bin/cli.mjs",
- "watch": "node --watch packages/core/bin/cli.mjs",
+ "run": "node packages/cli/bin/cli.mjs",
+ "watch": "node --watch packages/cli/bin/cli.mjs",
"docs:build": "bash scripts/vercel-docs-build.sh",
"changeset": "changeset",
"changeset:version": "changeset version",
diff --git a/packages/cli/README.md b/packages/cli/README.md
new file mode 100644
index 00000000..be9f9dbf
--- /dev/null
+++ b/packages/cli/README.md
@@ -0,0 +1,45 @@
+# `@doc-kit/cli`
+
+The command-line interface for [doc-kit](https://github.com/nodejs/doc-kit):
+the `doc-kit` binary that runs the
+[`@doc-kit/core`](https://www.npmjs.com/package/@doc-kit/core) engine to turn
+API-shaped Markdown into documentation sites, JSON, man pages, and more.
+
+## Usage
+
+```sh
+npx doc-kit --help
+npx doc-kit generate --help
+```
+
+You must provide an input and at least one target through command-line
+options or a configuration file. Configuration is discovered automatically
+using `cosmiconfig`, or you can select a file explicitly with
+`--config-file`.
+
+```sh
+npx doc-kit generate \
+ -t html \
+ -i "path/to/docs/**/*.md" \
+ -o out
+```
+
+Built-in generator names resolve to the [`@doc-kit/core`
+generators](https://www.npmjs.com/package/@doc-kit/core) and its companion
+generator packages, which must be installed alongside this one. Custom
+generators load by import specifier — any module whose default export is a
+generator works as a `--target`.
+
+## Contributing
+
+This package lives in the [nodejs/doc-kit](https://github.com/nodejs/doc-kit)
+monorepo. From this directory (or the repository root with
+`npm run