paddleocr-js/docs/monorepo.md
English | 简体中文
When you only want one workspace, use root-level workspace commands with explicit paths:
npm run build --workspace packages/core
npm run dev --workspace apps/demo
(You can also use workspace package names where unambiguous, e.g. npm run dev --workspace demo.)
packages/*: reusable packages; the SDK lives under packages/core but keeps the npm package name @paddleocr/paddleocr-jsapps/*: private applications such as demos (apps/demo); not published to npm as productspackages/core — SDK source and publish manifest for the public package@paddleocr/paddleocr-js — what consumers npm install and import in codeapps/demo — private demo, not an npm release target.changeset/config.jsonnpm run release builds the SDK and publishes via changeset publishpackages/core has a prepublishOnly script that auto-builds before npm publish / npm packpackages/**/src/**/*.ts is linted with strictTypeChecked TypeScript rules and browser-oriented globalspackages/**/test/**/*.ts is linted with the lighter recommendedTypeChecked preset (browser + Node globals, with relaxed rules such as no-unsafe-* and no-explicit-any disabled)apps/**/src/**/*.ts also uses strictTypeChecked TypeScript rules with browser-oriented globalsapps/**/*.js, root config files (*.config.{js,ts}), and package config files (packages/**/*.config.*) are linted with basic ESLint rules and both Node and browser globals