microsoft/rushstack

microsoft/rushstack is a TypeScript project with 6.5k stars in the API space. Monorepo for tools developed by the Rush Stack community
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
Snapshot
Top contributors
Show top contributors
|
https://rushstack.io/ |
The home for projects maintained by the Rush Stack community. Our mission is to develop reusable tooling for large scale TypeScript monorepos.
|
|
Documentation Links
- What is Rush Stack? - learn about the mission behind these projects
- API reference - browse API documentation for NPM packages
- Zulip chat room - chat with the Rush Stack developers
- Rush - a build orchestrator for large scale TypeScript monorepos
- Heft - our recommended tool that integrates with Rush
- API Extractor - create .d.ts rollups and track your TypeScript API signatures
- API Documenter - use TSDoc comments to publish an API documentation website
- Lockfile Explorer - investigate and solve version conflicts for PNPM lockfiles
- TSDoc - the standard for doc comments in TypeScript code
Related Repos
These GitHub repositories provide supplementary resources for Rush Stack:
- rushstack-samples - a monoprepo with sample projects that illustrate various project setups, including how to use Heft with other popular JavaScript frameworks
- rush-example - a minimal Rush repo that demonstrates the fundamentals of Rush without relying on any other Rush Stack tooling
- rushstack-websites - Docusaurus monorepo for our websites
Published Packages
| Folder | Version | Changelog | Package |
|---|---|---|---|
| /apps/api-documenter | changelog | @microsoft/api-documenter | |
| /apps/api-extractor | changelog | @microsoft/api-extractor | |
| /apps/cpu-profile-summarizer | changelog | @rushstack/cpu-profile-summarizer | |
| /apps/heft | changelog | @rushstack/heft | |
| /apps/lockfile-explorer | changelog | @rushstack/lockfile-explorer | |
| /apps/playwright-browser-tunnel | changelog | @rushstack/playwright-browser-tunnel | |
| /apps/rundown | changelog | @rushstack/rundown | |
| /apps/rush | changelog | @microsoft/rush | |
| /apps/rush-mcp-server | changelog | @rushstack/mcp-server | |
| /apps/trace-import | changelog | @rushstack/trace-import | |
| /apps/zipsync | changelog | @rushstack/zipsync | |
| /eslint/eslint-bulk | changelog | @rushstack/eslint-bulk | |
| /eslint/eslint-config | changelog | @rushstack/eslint-config | |
| /eslint/eslint-patch | changelog | @rushstack/eslint-patch | |
| /eslint/eslint-plugin | changelog | @rushstack/eslint-plugin | |
| /eslint/eslint-plugin-packlets | changelog | @rushstack/eslint-plugin-packlets | |
| /eslint/eslint-plugin-security | changelog | @rushstack/eslint-plugin-security | |
| /heft-plugins/heft-api-extractor-plugin | changelog | @rushstack/heft-api-extractor-plugin | |
| /heft-plugins/heft-dev-cert-plugin | changelog | @rushstack/heft-dev-cert-plugin | |
| /heft-plugins/heft-isolated-typescript-transpile-plugin | changelog | @rushstack/heft-isolated-typescript-transpile-plugin | |
| /heft-plugins/heft-jest-plugin | changelog | @rushstack/heft-jest-plugin | |
| /heft-plugins/heft-json-schema-typings-plugin | changelog | @rushstack/heft-json-schema-typings-plugin | |
| /heft-plugins/heft-lint-plugin | changelog | @rushstack/heft-lint-plugin | |
| /heft-plugins/heft-localization-typings-plugin | changelog | @rushstack/heft-localization-typings-plugin | |
| /heft-plugins/heft-rspack-plugin | changelog | @rushstack/heft-rspack-plugin | |
| /heft-plugins/heft-sass-load-themed-styles-plugin | changelog | @rushstack/heft-sass-load-themed-styles-plugin | |
| /heft-plugins/heft-sass-plugin | changelog | @rushstack/heft-sass-plugin | |
| /heft-plugins/heft-serverless-stack-plugin | changelog | @rushstack/heft-serverless-stack-plugin | |
| /heft-plugins/heft-static-asset-typings-plugin | changelog | @rushstack/heft-static-asset-typings-plugin | |
| /heft-plugins/heft-storybook-plugin | changelog | @rushstack/heft-storybook-plugin | |
| /heft-plugins/heft-typescript-plugin | changelog | @rushstack/heft-typescript-plugin | |
| /heft-plugins/heft-vscode-extension-plugin | changelog | @rushstack/heft-vscode-extension-plugin | |
| /heft-plugins/heft-webpack4-plugin | changelog | @rushstack/heft-webpack4-plugin | |
| /heft-plugins/heft-webpack5-plugin | changelog | @rushstack/heft-webpack5-plugin | |
| /libraries/api-extractor-model | changelog | @microsoft/api-extractor-model | |
| /libraries/credential-cache | changelog | @rushstack/credential-cache | |
| /libraries/debug-certificate-manager | changelog | @rushstack/debug-certificate-manager | |
| /libraries/heft-config-file | changelog | @rushstack/heft-config-file | |
| /libraries/load-themed-styles | changelog | @microsoft/load-themed-styles | |
| /libraries/localization-utilities | changelog | @rushstack/localization-utilities | |
| /libraries/lookup-by-path | changelog | @rushstack/lookup-by-path | |
| /libraries/module-minifier | changelog | @rushstack/module-minifier | |
| /libraries/node-core-library | changelog | @rushstack/node-core-library | |
| /libraries/npm-check-fork | changelog | @rushstack/npm-check-fork | |
| /libraries/operation-graph | changelog | @rushstack/operation-graph | |
| /libraries/package-deps-hash | changelog | @rushstack/package-deps-hash | |
| /libraries/package-extractor | changelog | @rushstack/package-extractor | |
| /libraries/problem-matcher | changelog | @rushstack/problem-matcher | |
| /libraries/rig-package | changelog | @rushstack/rig-package | |
| /libraries/rush-lib | @microsoft/rush-lib | ||
| /libraries/rush-pnpm-kit-v10 | changelog | @rushstack/rush-pnpm-kit-v10 | |
| /libraries/rush-pnpm-kit-v8 | changelog | @rushstack/rush-pnpm-kit-v8 | |
| /libraries/rush-pnpm-kit-v9 | changelog | @rushstack/rush-pnpm-kit-v9 | |
| /libraries/rush-sdk | @rushstack/rush-sdk | ||
| /libraries/stream-collator | changelog | @rushstack/stream-collator | |
| /libraries/terminal | changelog | @rushstack/terminal | |
| /libraries/tree-pattern | changelog | @rushstack/tree-pattern | |
| /libraries/ts-command-line | changelog | @rushstack/ts-command-line | |
| /libraries/typings-generator | changelog | @rushstack/typings-generator | |
| /libraries/worker-pool | changelog | @rushstack/worker-pool | |
| /rigs/heft-node-rig | changelog | @rushstack/heft-node-rig | |
| /rigs/heft-vscode-extension-rig | changelog | @rushstack/heft-vscode-extension-rig | |
| /rigs/heft-web-rig | changelog | @rushstack/heft-web-rig | |
| /rush-plugins/rush-amazon-s3-build-cache-plugin | @rushstack/rush-amazon-s3-build-cache-plugin | ||
| /rush-plugins/rush-azure-storage-build-cache-plugin | @rushstack/rush-azure-storage-build-cache-plugin | ||
| /rush-plugins/rush-bridge-cache-plugin | @rushstack/rush-bridge-cache-plugin | ||
| /rush-plugins/rush-buildxl-graph-plugin | @rushstack/rush-buildxl-graph-plugin | ||
| /rush-plugins/rush-http-build-cache-plugin | @rushstack/rush-http-build-cache-plugin | ||
| /rush-plugins/rush-mcp-docs-plugin | changelog | @rushstack/rush-mcp-docs-plugin | |
| /rush-plugins/rush-published-versions-json-plugin | changelog | @rushstack/rush-published-versions-json-plugin | |
| /rush-plugins/rush-redis-cobuild-plugin | @rushstack/rush-redis-cobuild-plugin | ||
| /rush-plugins/rush-resolver-cache-plugin | @rushstack/rush-resolver-cache-plugin | ||
| /rush-plugins/rush-serve-plugin | @rushstack/rush-serve-plugin | ||
| /webpack/hashed-folder-copy-plugin | changelog | @rushstack/hashed-folder-copy-plugin | |
| /webpack/loader-load-themed-styles | changelog | @microsoft/loader-load-themed-styles | |
| /webpack/loader-raw-script | changelog | @rushstack/loader-raw-script | |
| /webpack/preserve-dynamic-require-plugin | changelog | @rushstack/webpack-preserve-dynamic-require-plugin | |
| /webpack/set-webpack-public-path-plugin | changelog | @rushstack/set-webpack-public-path-plugin | |
| /webpack/webpack-embedded-dependencies-plugin | changelog | @rushstack/webpack-embedded-dependencies-plugin | |
| /webpack/webpack-plugin-utilities | changelog | @rushstack/webpack-plugin-utilities | |
| /webpack/webpack-workspace-resolve-plugin | changelog | @rushstack/webpack-workspace-resolve-plugin | |
| /webpack/webpack4-localization-plugin | changelog | @rushstack/webpack4-localization-plugin | |
| /webpack/webpack4-module-minifier-plugin | changelog | @rushstack/webpack4-module-minifier-plugin | |
| /webpack/webpack5-load-themed-styles-loader | changelog | @microsoft/webpack5-load-themed-styles-loader | |
| /webpack/webpack5-localization-plugin | changelog | @rushstack/webpack5-localization-plugin | |
| /webpack/webpack5-module-minifier-plugin | changelog | @rushstack/webpack5-module-minifier-plugin |
Unpublished Local Projects
| Folder | Description |
|---|---|
| /apps/lockfile-explorer-web | Rush Lockfile Explorer: helper project for building the React web application component |
| /apps/rush-serve-dashboard | Web dashboard for the Rush serve WebSocket protocol |
| /build-tests-samples/heft-node-basic-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-node-jest-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-node-rig-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-serverless-stack-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-storybook-v6-react-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-storybook-v6-react-tutorial-app | Building this project is a regression test for heft-storybook-plugin |
| /build-tests-samples/heft-storybook-v6-react-tutorial-storykit | Storybook build dependencies for heft-storybook-v6-react-tutorial |
| /build-tests-samples/heft-storybook-v9-react-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-storybook-v9-react-tutorial-app | Building this project is a regression test for heft-storybook-plugin |
| /build-tests-samples/heft-storybook-v9-react-tutorial-storykit | Storybook build dependencies for heft-storybook-v9-react-tutorial |
| /build-tests-samples/heft-web-rig-app-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-web-rig-library-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/heft-webpack-basic-tutorial | (Copy of sample project) Building this project is a regression test for Heft |
| /build-tests-samples/packlets-tutorial | (Copy of sample project) Building this project is a regression test for @rushstack/eslint-plugin-packlets |
| /build-tests-subspace/rush-lib-test | A minimal example project that imports APIs from @rushstack/rush-lib |
| /build-tests-subspace/rush-sdk-test | A minimal example project that imports APIs from @rushstack/rush-sdk |
| /build-tests-subspace/typescript-newest-test | Building this project tests Heft with the newest supported TypeScript compiler version |
| /build-tests-subspace/typescript-v4-test | Building this project tests Heft with TypeScript v4 |
| /build-tests/api-documenter-scenarios | Building this project is a regression test for api-documenter |
| /build-tests/api-documenter-test | Building this project is a regression test for api-documenter |
| /build-tests/api-extractor-d-cts-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-d-mts-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-lib1-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-lib2-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-lib3-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-lib4-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-lib5-test | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-scenarios | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-test-01 | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-test-02 | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-test-03 | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-test-04 | Building this project is a regression test for api-extractor |
| /build-tests/api-extractor-test-05 | Building this project is a regression test for api-extractor |
| /build-tests/eslint-7-11-test | This project contains a build test to validate ESLint 7.11.0 compatibility with the latest version of @rushstack/eslint-config (and by extension, the ESLint plugin) |
| /build-tests/eslint-7-7-test | This project contains a build test to validate ESLint 7.7.0 compatibility with the latest version of @rushstack/eslint-config (and by extension, the ESLint plugin) |
| /build-tests/eslint-7-test | This project contains a build test to validate ESLint 7 compatibility with the latest version of @rushstack/eslint-config (and by extension, the ESLint plugin) |
| /build-tests/eslint-8-test | This project contains a build test to validate ESLint 8 compatibility with the latest version of @rushstack/eslint-config (and by extension, the ESLint plugin) |
| /build-tests/eslint-9-test | This project contains a build test to validate ESLint 9 compatibility with the latest version of @rushstack/eslint-config (and by extension, the ESLint plugin) |
| /build-tests/eslint-bulk-suppressions-test | Sample code to test eslint bulk suppressions |
| /build-tests/eslint-bulk-suppressions-test-flat | Sample code to test eslint bulk suppressions with flat configs |
| /build-tests/eslint-bulk-suppressions-test-legacy | Sample code to test eslint bulk suppressions for versions of eslint < 8.57.0 |
| /build-tests/esm-node-import-test | This project validates that importing a rushstack package from a 'type: module' Node.js project works correctly with the package.json 'exports' field. See https://github.com/microsoft/rushstack/issues/5644 |
| /build-tests/hashed-folder-copy-plugin-webpack5-test | Building this project exercises @rushstack/hashed-folder-copy-plugin with Webpack 5. NOTE - THIS TEST IS CURRENTLY EXPECTED TO BE BROKEN |
| /build-tests/heft-copy-files-test | Building this project tests copying files with Heft |
| /build-tests/heft-example-lifecycle-plugin | This is an example heft plugin for testing the lifecycle hooks |
| /build-tests/heft-example-plugin-01 | This is an example heft plugin that exposes hooks for other plugins |
| /build-tests/heft-example-plugin-02 | This is an example heft plugin that taps the hooks exposed from heft-example-plugin-01 |
| /build-tests/heft-fastify-test | This project tests Heft support for the Fastify framework for Node.js services |
| /build-tests/heft-jest-preset-test | This project illustrates configuring a Jest preset in a minimal Heft project |
| /build-tests/heft-jest-reporters-test | This project illustrates configuring Jest reporters in a minimal Heft project |
| /build-tests/heft-json-schema-typings-plugin-test | This project illustrates configuring Jest reporters in a minimal Heft project |
| /build-tests/heft-minimal-rig-test | This is a minimal rig package that is imported by the 'heft-minimal-rig-usage-test' project |
| /build-tests/heft-minimal-rig-usage-test | A test project for Heft that resolves its compiler from the 'heft-minimal-rig-test' package |
| /build-tests/heft-node-everything-esm-module-test | Building this project tests every task and config file for Heft when targeting the Node.js runtime when configured to use ESM module support |
| /build-tests/heft-node-everything-test | Building this project tests every task and config file for Heft when targeting the Node.js runtime |
| /build-tests/heft-parameter-plugin | This project contains a Heft plugin that adds a custom parameter to built-in actions |
| /build-tests/heft-parameter-plugin-test | This project exercises a built-in Heft action with a custom parameter |
| /build-tests/heft-rspack-everything-test | Building this project tests every task and config file for Heft when targeting the web browser runtime using Rspack |
| /build-tests/heft-sass-test | This project illustrates a minimal tutorial Heft project targeting the web browser runtime |
| /build-tests/heft-swc-test | Building this project tests building with SWC |
| /build-tests/heft-typescript-composite-test | Building this project tests behavior of Heft when the tsconfig.json file uses project references. |
| /build-tests/heft-typescript-v2-test | Building this project tests building with TypeScript v2 |
| /build-tests/heft-typescript-v3-test | Building this project tests building with TypeScript v3 |
| /build-tests/heft-typescript-v4-test | Building this project tests building with TypeScript v4 |
| /build-tests/heft-web-rig-library-test | A test project for Heft that exercises the '@rushstack/heft-web-rig' package |
| /build-tests/heft-webpack4-everything-test | Building this project tests every task and config file for Heft when targeting the web browser runtime using Webpack 4 |
| /build-tests/heft-webpack5-everything-test | Building this project tests every task and config file for Heft when targeting the web browser runtime using Webpack 5 |
| /build-tests/localization-plugin-test-01 | Building this project exercises @microsoft/localization-plugin. This tests that the plugin works correctly without any localized resources. |
| /build-tests/localization-plugin-test-02 | Building this project exercises @microsoft/localization-plugin. This tests that the loader works correctly with the exportAsDefault option unset. |
| /build-tests/localization-plugin-test-03 | Building this project exercises @microsoft/localization-plugin. This tests that the plugin works correctly with the exportAsDefault option set to true. |
| /build-tests/package-extractor-test-01 | This project is used by tests in the @rushstack/package-extractor package. |
| /build-tests/package-extractor-test-02 | This project is used by tests in the @rushstack/package-extractor package. |
| /build-tests/package-extractor-test-03 | This project is used by tests in the @rushstack/package-extractor package. |
| /build-tests/package-extractor-test-04 | This project is used by tests in the @rushstack/package-extractor package. |
| /build-tests/package-extractor-test-05 | This project is used by tests in the @rushstack/package-extractor package. |
| /build-tests/run-scenarios-helpers | Helpers for the *-scenarios test projects. |
| /build-tests/rush-amazon-s3-build-cache-plugin-integration-test | Tests connecting to an amazon S3 endpoint |
| /build-tests/rush-lib-declaration-paths-test | This project ensures all of the paths in rush-lib/lib/... have imports that resolve correctly. If this project builds, all lib/**/*.d.ts files in the @microsoft/rush-lib package are valid. |
| /build-tests/rush-mcp-example-plugin | Example showing how to create a plugin for @rushstack/mcp-server |
| /build-tests/rush-package-manager-integration-test | Integration tests for non-pnpm package managers in Rush. |
| /build-tests/rush-project-change-analyzer-test | This is an example project that uses rush-lib's ProjectChangeAnalyzer to |
| /build-tests/rush-redis-cobuild-plugin-integration-test | Tests connecting to an redis server |
| /build-tests/set-webpack-public-path-plugin-test | Building this project tests the set-webpack-public-path-plugin |
| /build-tests/webpack-local-version-test | Building this project tests the rig loading for the local version of webpack |
| /eslint/local-eslint-config | An ESLint configuration consumed projects inside the rushstack repo. |
| /libraries/rush-themed-ui | Rush Component Library: a set of themed components for rush projects |
| /libraries/rushell | Execute shell commands using a consistent syntax on every platform |
| /repo-scripts/doc-plugin-rush-stack | API Documenter plugin used with the rushstack.io website |
| /repo-scripts/generate-api-docs | Used to generate API docs for the rushstack.io website |
| /repo-scripts/repo-toolbox | Used to execute various operations specific to this repo |
| /rigs/decoupled-local-node-rig | A rig package for Node.js projects that build using Heft inside the RushStack repository, but are dependencies of @rushstack/heft-node-rig or local-node-rig. |
| /rigs/local-node-rig | A rig package for Node.js projects that build using Heft inside the RushStack repository. |
| /rigs/local-web-rig | A rig package for Web projects that build using Heft inside the RushStack repository. |
| /rush-plugins/rush-litewatch-plugin | An experimental alternative approach for multi-project watch mode |
| /vscode-extensions/debug-certificate-manager-vscode-extension | VS Code extension to manage debug TLS certificates and sync them to the VS Code workspace. Works with VS Code remote development (Codespaces, SSH, Dev Containers, WSL, VS Code Tunnels). |
| /vscode-extensions/playwright-local-browser-server-vscode-extension | VS Code extension to enable Playwright testing in remote VS Code environments (such as Codespaces, Dev Containers, VS Code Tunnels) while launching and driving the actual browser process on your local machine. |
| /vscode-extensions/rush-vscode-command-webview | Part of the Rush Stack VSCode extension, provides a UI for invoking Rush commands |
| /vscode-extensions/rush-vscode-extension | Enhanced experience for monorepos that use the Rush Stack toolchain |
| /vscode-extensions/vscode-shared | |
| /webpack/webpack-deep-imports-plugin | This plugin creates a bundle and commonJS files in a 'lib' folder mirroring modules in another 'lib' folder. |
Contributor Notice
This repo welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.
When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This repo has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
Related repositories
网易云音乐 Node.js API service
Effortlessly compose, extend, and observe every service in real-time for the first time ever.
Get a full fake REST API with zero coding in less than 30 seconds (seriously)
Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
Quick answers
How active is development on microsoft/rushstack?
The most recent commit recorded on microsoft/rushstack was 13 days ago, based on the GitHub push timestamp. The repository has 701 forks — one of the better signals of community interest.
How many stars does microsoft/rushstack have?
microsoft/rushstack has 6.5k GitHub stars — refresh the page for the live number, or check github.com/microsoft/rushstack. TopGit mirrors GitHub's count but does not claim minute-by-minute accuracy.
Is microsoft/rushstack open source?
TopGit's metadata for microsoft/rushstack does not record a license. Most public repositories on GitHub ARE open source, but the exact terms vary — verify by opening the LICENSE file directly.
What else is in the API space?
microsoft/rushstack is tracked by TopGit under the API category, alongside 16 GitHub-tagged topics. Trending and Topics pages list peer repositories of comparable stars and language.
What topics is microsoft/rushstack associated with?
GitHub's repository topics for microsoft/rushstack: "api", "api-extractor", "build", "bulk-suppressions", "eslint", "hacktoberfest", "heft", "lockfile-explorer", "monorepo", "nodejs", "orchestrator", "rush", "rushstack", "toolchain", "tsdoc", "typescript". TopGit's editorial category is API.
Where can I see microsoft/rushstack in action?
The project maintains a homepage at https://rushstack.io/. The README tab on this page also usually contains screenshots and a quickstart.
Where do I read more about microsoft/rushstack?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/microsoft/rushstack is the definitive source.
Read full README in the tab above.