The design system exists to build trust in our digital services and create components and standards that are reusable, equitable, informed by research, and available to the public.
Are you trying to find design system documentation?
We expect that you have basic working understanding of HTML, CSS, JavaScript, Node.js and npm, and Github.
git clone https://github.com/mlibrary/design-system.git
cd design-system
Copy .env-example
to .env
cp .env-example .env
Build the images
docker-compose build
Install the npm packages on your host machine
docker-compose run --rm web npm install
Build everything locally
docker-compose run --rm web npm run build
Start everything
docker-compose up
The Developer Workshop will then be available at http://localhost:8080/. This web page serves as a design system workshop to develop web components and styles and learn how to use the system.
Eleventy is a static site generator that is fairly simple, but powerful enough to use for our design system website.
Gulp for automating our development workflows and build pipelines.
PostCSS for improving the developer experience when writing styles with plugins like postcss-nesting and optimizing and transforming CSS for distribution.
Stencil is a compiler that generates Web Components (more specifically, Custom Elements). We use this to create ready-to-go solutions like with our Universal Header Web Component.
Theo is an abstraction for transforming and formatting Design Tokens. Used to manage our single source of truth for design values, such as colors and spacings.