.github | ||
.storybook | ||
meta/scoreboard | ||
modules | ||
script | ||
tests | ||
tools | ||
.gitignore | ||
.npmignore | ||
.npmrc | ||
.nvmrc | ||
.stylelintrc.json | ||
.travis.yml | ||
CHANGELOG.md | ||
lerna.json | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md |
Primer
Primer is the design system that powers GitHub. Primer includes 23 packages that are grouped into 3 core meta-packages for easy install. Each package and meta-package is independently versioned and distributed via npm, so it's easy to include all or part of Primer within your own project.
Packages
The Primer repo is managed as a monorepo that is composed of many npm packages.
Core Packages
Package | Version |
---|---|
primer Includes all 23 packages |
|
primer-core | |
primer-product | |
primer-marketing |
Install
This repository is distributed with npm. After installing npm, you can install primer
with this command.
$ npm install --save primer
Usage
The source files included are written in Sass (SCSS). After installing with npm, you can add your project's node_modules
directory to your Sass include paths (AKA load paths in Ruby), then import it like this:
@import "primer/index.scss";
You can import individual Primer modules by installing them with npm, for instance:
$ npm install --save primer-navigation
Then, you would import the module with:
@import "primer-navigation/index.scss";
Or, while you're figuring out which modules you need, you can import them directly from the primer
modules
directory like so:
@import "primer/modules/primer-navigation/index.css";
Build
For a compiled CSS version of this module, an npm script is included that will output a CSS version to build/build.css
. The built CSS file is also included in the npm package.
$ npm run build
Documentation
You can read more about primer in the docs.