A tool box for large scale web development
Switch branches/tags
v1.2.2 v1.2.1 v1.2.0 v1.1.0 v1.0.6 v0.11.1 v0.11.0 v0.10.1 v0.9.7 v0.9.6 v0.9.5 v0.9.3 v0.9.2 v0.9.1 v0.9.0 v0.8.2 v0.8.1 v0.8.0 v0.7.2 v0.7.1 v0.7.0 v0.6.4 v0.6.3 v0.6.2 v0.6.1 v0.6.0 v0.5.4 v0.5.3 v0.5.2 v0.5.1 v0.5.0 v0.4.9 v0.4.4 v0.4.3 v0.4.2 v0.4.1 v0.4.0 v0.3.10 v0.3.9 v0.3.8 v0.3.7 v0.3.6 v0.3.4 v0.3.3 v0.3.2 v0.3.1 v0.3.0 v0.2.20 v0.2.19 v0.2.7 v0.2.6 v0.2.5 v0.2.4 v0.2.3 v0.2.2 v0.2.1 v0.2.0 v0.1.3 v0.1.2 v0.1.1 test-web-library-build_v1.0.1 @microsoft/web-library-build_v6.0.15 @microsoft/web-library-build_v6.0.14 @microsoft/web-library-build_v6.0.13 @microsoft/web-library-build_v6.0.12 @microsoft/web-library-build_v6.0.11 @microsoft/web-library-build_v6.0.10 @microsoft/web-library-build_v6.0.9 @microsoft/web-library-build_v6.0.8 @microsoft/web-library-build_v6.0.7 @microsoft/web-library-build_v6.0.6 @microsoft/web-library-build_v6.0.5 @microsoft/web-library-build_v6.0.4 @microsoft/web-library-build_v6.0.3 @microsoft/web-library-build_v6.0.2 @microsoft/web-library-build_v6.0.1 @microsoft/web-library-build_v6.0.0 @microsoft/web-library-build_v5.1.3 @microsoft/web-library-build_v5.1.2 @microsoft/web-library-build_v5.1.1 @microsoft/web-library-build_v5.1.0 @microsoft/web-library-build_v5.0.8 @microsoft/web-library-build_v5.0.7 @microsoft/web-library-build_v5.0.6 @microsoft/web-library-build_v5.0.5 @microsoft/web-library-build_v5.0.4 @microsoft/web-library-build_v5.0.3 @microsoft/web-library-build_v5.0.1 @microsoft/web-library-build_v5.0.0 @microsoft/web-library-build_v4.4.68 @microsoft/web-library-build_v4.4.67 @microsoft/web-library-build_v4.4.66 @microsoft/web-library-build_v4.4.65 @microsoft/web-library-build_v4.4.64 @microsoft/web-library-build_v4.4.63 @microsoft/web-library-build_v4.4.62 @microsoft/web-library-build_v4.4.61 @microsoft/web-library-build_v4.4.60 @microsoft/web-library-build_v4.4.59 @microsoft/web-library-build_v4.4.58
Nothing to show
Clone or download
pgonzal Merge pull request #888 from acoates-ms/ssrush
Expose safeForSimultaneousRushProcesses to custom commands
Latest commit 734650b Oct 21, 2018

README.md

web-build-tools

Join the chat at https://gitter.im/web-build-tools/Lobby

Build Status

This repo hosts a collection of tools and libraries used to build web projects at Microsoft.

  • CURRENT NEWS: See what's happening with the web-build-tools projects!

Highlighted projects:

  • API Extractor helps you build better TypeScript libraries. It standardizes your exported API surface, generates your online API reference, and makes it easy to detect and review changes that will impact your API contract.

  • Gulp Core Build: If you maintain lots of projects, gulp-core-build gets you out of the business of maintaining lots of Gulpfiles. It defines reusable "rigs" that you customize using simple config files with well-defined JSON schemas.

  • Rush: Want to consolidate all your web projects in one big repo? Rush is a fast and reliable solution for installing, linking, building, publishing, checking, change log authoring, and anything else that involves a "package.json" file.

Contributing

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 opencode@microsoft.com with any additional questions or comments.

Project Inventory

Apps

@microsoft/api-extractor

Validate, document, and review the exported API for a TypeScript library.

npm version Dependencies

@microsoft/api-documenter

Read JSON files from api-extractor, generate documentation pages.

npm version Dependencies

@microsoft/rush

The professional solution for consolidating all your JavaScript projects in one Git repo.

npm version Dependencies

@microsoft/rush-lib

A library for scripts that interact with the Rush tool.

npm version Dependencies

Core Build: Tasks

@microsoft/gulp-core-build

Defines the build task model, config file parser, and rig framework for the Gulp Core Build system, along with some essential build tasks.

npm version Dependencies

@microsoft/gulp-core-build-karma

A build task for running unit tests using karma + phantomjs + mocha + chai. This setup allows you to run browser-based testing.

npm version Dependencies

@microsoft/gulp-core-build-mocha

A build task for running unit tests using mocha + chai. This setup is useful for unit testing build tools, as it runs in the NodeJS process rather than in a browser.

npm version Dependencies

@microsoft/gulp-core-build-sass

A build task which processes scss files using SASS, runs them through postcss, and produces CommonJS/AMD modules which are injected using the @microsoft/load-themed-styles package.

npm version Dependencies

@microsoft/gulp-core-build-serve

A build task for testing/serving web content on the localhost, and live reloading it when things change. This drives the gulp serve experience.

npm version Dependencies

@microsoft/gulp-core-build-typescript

Build tasks for invoking the TypeScript compiler, tslint, and api-extractor.

npm version Dependencies

@microsoft/gulp-core-build-webpack

A build task which introduces the ability to bundle various source files into a set of bundles using webpack.

npm version Dependencies

Core Build: Rigs

@microsoft/node-library-build

A Gulp Core Build rig which provides basic functionality for building and unit testing TypeScript projects intended to run under NodeJS.

npm version Dependencies

@microsoft/web-library-build

A Gulp Core Build rig for building web libraries. It includes build tasks for processing css, typescript, serving, and running browser tests using karma.

npm version Dependencies

Libraries

@microsoft/load-themed-styles

Loads a string of style rules, but supports detokenizing theme constants built within it.

npm version Dependencies

@microsoft/node-core-library

Essential libraries that every NodeJS toolchain project should use.

npm version Dependencies

@microsoft/package-deps-hash

package-deps-hash is mainly used by Rush. It generates a JSON file containing the Git hashes of all input files used to build a given package.

npm version Dependencies

@microsoft/stream-collator

Oftentimes, when working with multiple parallel asynchronous processes, it is helpful to ensure that their outputs are not mixed together, as this can cause readability issues in the console or log. The stream-collator manages the output of these streams carefully, such that no two streams are writing at the same time.

npm version Dependencies

@microsoft/ts-command-line

An object-oriented command-line parser for TypeScript projects, based on the argparse engine.

npm version Dependencies

Webpack Loaders and Plugins

@microsoft/set-webpack-public-path-plugin

set-webpack-public-path-plugin is a plugin used to set the webpack public path variable.

npm version Dependencies

@microsoft/resolve-chunk-plugin

resolve-chunk-plugin is a plugin that looks for calls to resolveChunk with a chunk name, and returns the chunk ID.

npm version Dependencies

@microsoft/loader-set-webpack-public-path

loader-set-webpack-public-path is a loader used to set the webpack public path variable. It's similar to set-webpack-public-path-plugin.

npm version Dependencies

@microsoft/loader-load-themed-styles

loader-load-themed-styles is a loader used for loading themed CSS styles.

npm version Dependencies

@microsoft/loader-raw-script

loader-raw-script is a loader used for loading scripts with an eval statement.

npm version Dependencies