Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## feature/monorepo #693 +/- ##
====================================================
- Coverage 75.44% 74.84% -0.60%
====================================================
Files 148 149 +1
Lines 13572 13683 +111
Branches 1023 1023
====================================================
+ Hits 10239 10241 +2
- Misses 3328 3437 +109
Partials 5 5 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
| File | Base | Head | Diff |
|---|---|---|---|
orama-db.json |
8.05 MB | 8.05 MB | -1.00 B (-0.00%) |
web Generator
| File | Base | Head | Diff |
|---|---|---|---|
styles.css |
137.01 KB | 136.99 KB | -15.00 B (-0.01%) |
There was a problem hiding this comment.
Pull request overview
This PR introduces a basic pnpm monorepo layout and migrates the existing doc-kit implementation into packages/core, including a generator pipeline, supporting utilities, and CI updates to run tests/lint across the workspace.
Changes:
- Add pnpm workspace configuration and split the project into a
packages/*monorepo withpackages/coreas the main package. - Introduce/port core runtime: generator orchestration, threading/streaming utilities, parsers, and multiple generators (web, sitemap, llms-txt, etc.) under
packages/core/src. - Update GitHub Actions workflows and repo tooling (ESLint/Prettier/c8 ignores) for the new folder structure.
Reviewed changes
Copilot reviewed 11 out of 230 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| pnpm-workspace.yaml | Defines pnpm workspace packages/* |
| package.json | Converts root to private monorepo + pnpm -r scripts |
| eslint.config.mjs | Updates paths/ignores for monorepo layout |
| .prettierignore | Updates ignored paths to packages/core |
| .gitignore | Adds pnpm-debug.log |
| .c8rc.json | Updates coverage excludes to packages/core |
| .github/workflows/ci.yml | Switches CI to pnpm setup-environment |
| .github/workflows/generate.yml | Updates generator workflow to run packages/core CLI |
| .github/workflows/publish.yml | Removes old publish workflow |
| packages/core/package.json | Adds new core package manifest/scripts/deps |
| packages/core/shiki.config.mjs | Adds shiki config for core generator |
| packages/core/bin/cli.mjs | Adds core CLI entrypoint |
| packages/core/bin/utils.mjs | Adds CLI error wrapper |
| packages/core/bin/commands/index.mjs | Registers CLI commands |
| packages/core/bin/commands/generate.mjs | Adds generate command + options |
| packages/core/src/generators.mjs | Adds generator orchestration pipeline |
| packages/core/src/streaming.mjs | Adds async-generator collection + caching |
| packages/core/src/threading/index.mjs | Adds Piscina pool factory |
| packages/core/src/threading/parallel.mjs | Adds parallel chunk scheduling/streaming |
| packages/core/src/threading/chunk-worker.mjs | Adds Piscina worker entrypoint |
| packages/core/src/logger/constants.mjs | Adds logger level constants |
| packages/core/src/logger/types.d.ts | Adds logger transport types |
| packages/core/src/logger/index.mjs | Adds logger factory + default logger |
| packages/core/src/logger/transports/index.mjs | Exposes console/github transports |
| packages/core/src/logger/transports/console.mjs | Console transport formatting |
| packages/core/src/logger/transports/github.mjs | GitHub Actions transport integration |
| packages/core/src/logger/utils/colors.mjs | Color formatting helpers |
| packages/core/src/logger/utils/time.mjs | Timestamp formatting helper |
| packages/core/src/parsers/types.d.ts | Adds parser shared types |
| packages/core/src/parsers/markdown.mjs | Adds changelog/index markdown parsing |
| packages/core/src/parsers/json.mjs | Adds JSON type-map parsing |
| packages/core/src/parsers/tests/markdown.test.mjs | Tests markdown parser |
| packages/core/src/parsers/tests/json.test.mjs | Tests JSON parser |
| packages/core/src/utils/array.mjs | Adds enforceArray helper |
| packages/core/src/utils/misc.mjs | Adds lazy + deepMerge helpers |
| packages/core/src/utils/file.mjs | Adds writeFile helper (mkdir -p) + withExt |
| packages/core/src/utils/url.mjs | Adds URL/file loading + import + relative |
| packages/core/src/utils/parser.mjs | Adds URL/file loading helper (parser) |
| packages/core/src/utils/html-minifier.mjs | Adds HTML minifier wrapper |
| packages/core/src/utils/unist.mjs | Adds unist node->string utilities |
| packages/core/src/utils/remark.mjs | Adds unified/remark/rehype/recma pipelines |
| packages/core/src/utils/queries/constants.mjs | Adds query constants |
| packages/core/src/utils/queries/utils.mjs | Adds typed-list detection helper |
| packages/core/src/utils/queries/index.mjs | Adds query regex + UNIST predicates |
| packages/core/src/utils/tests/url.test.mjs | Tests URL utilities |
| packages/core/src/utils/tests/parser.test.mjs | Tests parser loadFromURL |
| packages/core/src/utils/tests/unist.test.mjs | Tests unist utilities |
| packages/core/src/utils/configuration/types.d.ts | Adds configuration type model |
| packages/core/src/utils/configuration/templates.mjs | Adds URL template population |
| packages/core/src/utils/configuration/index.mjs | Adds config loading/merging/coercion |
| packages/core/src/utils/configuration/tests/index.test.mjs | Tests configuration module |
| packages/core/src/generators/index.mjs | Registers all generators |
| packages/core/src/generators/tests/index.test.mjs | Validates generator metadata |
| packages/core/src/generators/ast/constants.mjs | Adds ast generator constants |
| packages/core/src/generators/ast/types.d.ts | Adds ast generator types |
| packages/core/src/generators/ast/index.mjs | Adds ast generator metadata |
| packages/core/src/generators/ast/README.md | Documents ast generator |
| packages/core/src/generators/ast/generate.mjs | Adds ast generator implementation |
| packages/core/src/generators/ast-js/types.d.ts | Adds ast-js generator types |
| packages/core/src/generators/ast-js/index.mjs | Adds ast-js generator metadata |
| packages/core/src/generators/ast-js/README.md | Documents ast-js generator |
| packages/core/src/generators/ast-js/generate.mjs | Adds ast-js generator implementation |
| packages/core/src/generators/metadata/types.d.ts | Adds metadata generator types |
| packages/core/src/generators/metadata/index.mjs | Adds metadata generator metadata |
| packages/core/src/generators/metadata/README.md | Documents metadata generator |
| packages/core/src/generators/metadata/generate.mjs | Adds metadata generator implementation |
| packages/core/src/generators/metadata/utils/yaml.mjs | Adds YAML extraction/normalization |
| packages/core/src/generators/metadata/utils/slugger.mjs | Adds Node-flavored slugger |
| packages/core/src/generators/metadata/utils/tests/yaml.test.mjs | Tests YAML helpers |
| packages/core/src/generators/metadata/utils/tests/transformers.mjs | Tests type-link transformer |
| packages/core/src/generators/metadata/utils/tests/slugger.test.mjs | Tests slugger |
| packages/core/src/generators/jsx-ast/types.d.ts | Adds jsx-ast generator types |
| packages/core/src/generators/jsx-ast/index.mjs | Adds jsx-ast generator metadata |
| packages/core/src/generators/jsx-ast/README.md | Documents jsx-ast generator |
| packages/core/src/generators/jsx-ast/generate.mjs | Adds jsx-ast generator implementation |
| packages/core/src/generators/jsx-ast/utils/transformer.mjs | Adds JSX element transformer |
| packages/core/src/generators/jsx-ast/utils/getSortedHeadNodes.mjs | Adds head-node sorting |
| packages/core/src/generators/jsx-ast/utils/tests/buildContent.test.mjs | Tests content transforms |
| packages/core/src/generators/web/types.d.ts | Adds web generator types |
| packages/core/src/generators/web/index.mjs | Adds web generator metadata |
| packages/core/src/generators/web/README.md | Documents web generator |
| packages/core/src/generators/web/template.html | Adds web HTML template |
| packages/core/src/generators/web/constants.mjs | Adds web generator constants |
| packages/core/src/generators/web/generate.mjs | Adds web generator implementation |
| packages/core/src/generators/web/utils/generate.mjs | Adds program builder (client/server) |
| packages/core/src/generators/web/utils/data.mjs | Adds static data extraction for client |
| packages/core/src/generators/web/utils/css.mjs | Adds CSS loader plugin for rolldown |
| packages/core/src/generators/web/utils/chunks.mjs | Adds chunked require runtime |
| packages/core/src/generators/web/ui/package.json | Marks UI sideEffects false |
| packages/core/src/generators/web/ui/types.d.ts | Declares UI globals |
| packages/core/src/generators/web/ui/index.css | Adds web UI styles |
| packages/core/src/generators/web/ui/constants.mjs | Exposes static data constant |
| packages/core/src/generators/web/ui/hooks/useTheme.mjs | Adds theme hook |
| packages/core/src/generators/web/ui/hooks/useOrama.mjs | Adds Orama hook |
| packages/core/src/generators/web/ui/components/NoOp.jsx | Adds no-op component |
| packages/core/src/generators/web/ui/components/NavBar.jsx | Adds NavBar wrapper |
| packages/core/src/generators/web/ui/components/CodeBox.jsx | Adds CodeBox wrapper |
| packages/core/src/generators/web/ui/components/Layout/index.jsx | Adds Layout wrapper |
| packages/core/src/generators/web/ui/components/SideBar/index.jsx | Adds SideBar wrapper |
| packages/core/src/generators/web/ui/components/SideBar/index.module.css | SideBar CSS module |
| packages/core/src/generators/web/ui/components/SearchBox/index.jsx | Adds SearchBox component |
| packages/core/src/generators/web/ui/components/SearchBox/index.module.css | SearchBox styles |
| packages/core/src/generators/web/ui/components/MetaBar/index.jsx | Adds MetaBar wrapper |
| packages/core/src/generators/web/ui/components/MetaBar/index.module.css | MetaBar styles |
| packages/core/src/generators/sitemap/types.d.ts | Adds sitemap generator types |
| packages/core/src/generators/sitemap/index.mjs | Adds sitemap generator metadata |
| packages/core/src/generators/sitemap/README.md | Documents sitemap generator |
| packages/core/src/generators/sitemap/template.xml | Adds sitemap template |
| packages/core/src/generators/sitemap/entry-template.xml | Adds sitemap entry template |
| packages/core/src/generators/sitemap/utils/createPageSitemapEntry.mjs | Builds sitemap entries |
| packages/core/src/generators/sitemap/generate.mjs | Adds sitemap generator implementation |
| packages/core/src/generators/llms-txt/types.d.ts | Adds llms-txt generator types |
| packages/core/src/generators/llms-txt/index.mjs | Adds llms-txt generator metadata |
| packages/core/src/generators/llms-txt/README.md | Documents llms-txt generator |
| packages/core/src/generators/llms-txt/template.txt | Adds llms template |
| packages/core/src/generators/llms-txt/utils/buildApiDocLink.mjs | Builds API doc links |
| packages/core/src/generators/llms-txt/utils/tests/buildApiDocLink.test.mjs | Tests llms link builder |
| packages/core/src/generators/llms-txt/generate.mjs | Adds llms-txt generator implementation |
| packages/core/src/generators/orama-db/types.d.ts | Adds orama-db generator types |
| packages/core/src/generators/orama-db/index.mjs | Adds orama-db generator metadata |
| packages/core/src/generators/orama-db/README.md | Documents orama-db generator |
| packages/core/src/generators/orama-db/constants.mjs | Orama schema constants |
| packages/core/src/generators/orama-db/utils/title.mjs | Hierarchical title builder |
| packages/core/src/generators/orama-db/utils/tests/title.test.mjs | Tests hierarchical titles |
| packages/core/src/generators/orama-db/generate.mjs | Adds orama-db generator implementation |
| packages/core/src/generators/man-page/types.d.ts | Adds man-page generator types |
| packages/core/src/generators/man-page/index.mjs | Adds man-page generator metadata |
| packages/core/src/generators/man-page/README.md | Documents man-page generator |
| packages/core/src/generators/man-page/template.1 | Adds mdoc template |
| packages/core/src/generators/man-page/generate.mjs | Adds man-page generator implementation |
| packages/core/src/generators/json-simple/types.d.ts | Adds json-simple generator types |
| packages/core/src/generators/json-simple/index.mjs | Adds json-simple generator metadata |
| packages/core/src/generators/json-simple/README.md | Documents json-simple generator |
| packages/core/src/generators/json-simple/generate.mjs | Adds json-simple generator implementation |
| packages/core/src/generators/legacy-json/constants.mjs | Adds legacy-json constants |
| packages/core/src/generators/legacy-json/index.mjs | Adds legacy-json generator metadata |
| packages/core/src/generators/legacy-json/README.md | Documents legacy-json generator |
| packages/core/src/generators/legacy-json/generate.mjs | Adds legacy-json generator implementation |
| packages/core/src/generators/legacy-json/utils/buildHierarchy.mjs | Adds hierarchy builder |
| packages/core/src/generators/legacy-json/utils/tests/buildHierarchy.test.mjs | Tests hierarchy builder |
| packages/core/src/generators/legacy-json/utils/tests/buildSection.test.mjs | Tests section promotion |
| packages/core/src/generators/legacy-json-all/types.d.ts | Adds legacy-json-all types |
| packages/core/src/generators/legacy-json-all/index.mjs | Adds legacy-json-all metadata |
| packages/core/src/generators/legacy-json-all/README.md | Documents legacy-json-all |
| packages/core/src/generators/legacy-json-all/generate.mjs | Adds legacy-json-all implementation |
| packages/core/src/generators/legacy-html/types.d.ts | Adds legacy-html generator types |
| packages/core/src/generators/legacy-html/index.mjs | Adds legacy-html metadata |
| packages/core/src/generators/legacy-html/README.md | Documents legacy-html generator |
| packages/core/src/generators/legacy-html/utils/tableOfContents.mjs | Builds legacy HTML ToC |
| packages/core/src/generators/legacy-html/utils/buildDropdowns.mjs | Builds legacy dropdowns |
| packages/core/src/generators/legacy-html/utils/buildExtraContent.mjs | Builds extra legacy content |
| packages/core/src/generators/legacy-html/utils/replaceTemplateValues.mjs | Fills legacy template values |
| packages/core/src/generators/legacy-html/assets/js-flavor-esm.svg | Adds legacy asset |
| packages/core/src/generators/legacy-html/assets/js-flavor-cjs.svg | Adds legacy asset |
| packages/core/src/generators/legacy-html-all/types.d.ts | Adds legacy-html-all types |
| packages/core/src/generators/legacy-html-all/index.mjs | Adds legacy-html-all metadata |
| packages/core/src/generators/legacy-html-all/README.md | Documents legacy-html-all |
| packages/core/src/generators/legacy-html-all/generate.mjs | Adds legacy-html-all implementation |
| packages/core/src/generators/api-links/types.d.ts | Adds api-links generator types |
| packages/core/src/generators/api-links/index.mjs | Adds api-links metadata |
| packages/core/src/generators/api-links/README.md | Documents api-links generator |
| packages/core/src/generators/api-links/constants.mjs | Adds api-links constants |
| packages/core/src/generators/api-links/utils/checkIndirectReferences.mjs | Adds indirect reference mapping |
| packages/core/src/generators/api-links/generate.mjs | Adds api-links implementation |
| packages/core/src/generators/api-links/tests/fixtures.test.mjs | Adds api-links fixture tests |
| packages/core/src/generators/api-links/tests/fixtures.test.mjs.snapshot | Adds snapshots |
| packages/core/src/generators/api-links/tests/fixtures/root.js | Adds fixture |
| packages/core/src/generators/api-links/tests/fixtures/reverse.js | Adds fixture |
| packages/core/src/generators/api-links/tests/fixtures/prototype.js | Adds fixture |
| packages/core/src/generators/api-links/tests/fixtures/mod.js | Adds fixture |
| packages/core/src/generators/api-links/tests/fixtures/exports.js | Adds fixture |
| packages/core/src/generators/api-links/tests/fixtures/class.js | Adds fixture |
| packages/core/src/generators/api-links/tests/fixtures/buffer.js | Adds fixture |
| packages/core/src/generators/addon-verify/types.d.ts | Adds addon-verify types |
| packages/core/src/generators/addon-verify/index.mjs | Adds addon-verify metadata |
| packages/core/src/generators/addon-verify/README.md | Documents addon-verify |
| packages/core/src/generators/addon-verify/constants.mjs | Adds addon-verify constants |
| packages/core/src/generators/addon-verify/utils/section.mjs | Adds section helpers |
| packages/core/src/generators/addon-verify/utils/generateFileList.mjs | Adds file list generator |
| packages/core/src/generators/addon-verify/utils/tests/section.test.mjs | Tests section helpers |
| packages/core/src/generators/addon-verify/utils/tests/generateFileList.test.mjs | Tests file list generator |
| packages/core/src/generators/addon-verify/generate.mjs | Adds addon-verify implementation |
Comments suppressed due to low confidence (2)
.github/workflows/ci.yml:28
- This workflow no longer checks out the repository before running
node --run .... Unlessnodejs/web-team/actions/setup-environmentperforms a checkout (unusual for a setup action), these steps will run without the codebase present and fail. Add an explicitactions/checkoutstep (typically before setup/install) for bothqualityandtestjobs.
- uses: nodejs/web-team/actions/setup-environment@9f3c83af227d721768d9dbb63009a47ed4f4282f
with:
pnpm: true
use-version-file: true
- name: Run linting
run: node --run lint
- name: Check formatting
.github/workflows/generate.yml:138
- The
generatejob checks outnodejs/nodeinto./node, but it no longer checks out this repository (doc-kit) before runningnode packages/core/bin/cli.mjs .... That path won’t exist without anactions/checkoutof the current repo. Add a checkout for this repo (and install deps if the setup action doesn’t) before checking outnodejs/node.
- uses: nodejs/web-team/actions/setup-environment@9f3c83af227d721768d9dbb63009a47ed4f4282f
with:
pnpm: true
use-version-file: true
- name: Git Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
repository: nodejs/node
ref: ${{ needs.prepare.outputs.sha }}
sparse-checkout: |
doc/api
lib
.
path: node
- name: Generate ${{ matrix.target }}
run: |
node packages/core/bin/cli.mjs generate \
-t ${{ matrix.target }} \
-i "${{ matrix.input }}" \
-o out \
-c ./node/CHANGELOG.md \
--index ./node/doc/api/index.md \
--log-level debug
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
54e8334 to
6d9afad
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 227 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
482395c to
35921fb
Compare
a0b3ea0 to
5d10e26
Compare
|
cc @nodejs/web-infra PTAL |
Tip
This will merge into a feature branch, NOT the main branch