/blueprint

A React-based UI toolkit for the web

Primary LanguageTypeScriptOtherNOASSERTION

Blueprint is a React-based UI toolkit for the web.

It is optimized for building complex, data-dense web interfaces for desktop applications. If you rely heavily on mobile interactions and are looking for a mobile-first UI toolkit, this may not be for you.

View the full documentation ▸

Read our FAQ on the wiki ▸

Read the introductory blog post ▸

Support question? We use the blueprintjs tag on Stack Overflow ▸

Packages

This repository contains multiple projects in the packages/ directory that are distributed as separate packages on NPM:

npm – Core styles & components.

npm – Components for interacting with dates and times.

npm – Documentation theme for Documentalist data.

npm – Scalable interactive table component.

The other packages (site-docs and site-landing) are not published to NPM as they are used to build the documentation site.

Development

We use Lerna to manage inter-package dependencies in this monorepo. Builds are orchestrated via Gulp tasks.

Prerequisites: Node.js v6+, Yarn v0.28+

  1. git clone this repository (or fork if you lack permissions).
  2. yarn to install dependencies at the root of the repo.
  3. yarn bootstrap to install package dependencies install and symlink them using Lerna.
  4. yarn gulp to compile and start the server and watcher.
  5. Open your browser to localhost:9000/packages/site-docs/dist/.

Updating build dependencies

  1. yarn add <package-name> or yarn upgrade <package-name>.
  2. Commit the result.

Updating package dependencies

  1. Update the relevant package.json file. Make sure to retain the ^ semver range.
  2. Run yarn bootstrap and commit the result.

Contributing

Looking for places to contribute to the codebase? Check out the Status: accepting PRs label.

Read about our contribution guidelines and development practices to give your PR its best chance at getting merged.

License

This project is made available under the BSD License.