Giter VIP home page Giter VIP logo

design-system's Introduction

IATI Design System

What is the IATI Design System?

The IATI Design System is a set of reusable styles and components which should be used in IATI web products, along with guidance on how to use them.

How do I use the IATI Design System?

CDN (Recommended)

The recommended way to use the design system in an IATI product is by including the CSS from the CDN, using the url below, replacing <VERSION> with the version you would like to use:

https://cdn.jsdelivr.net/npm/iati-design-system@<VERSION>/dist/css/iati.min.css

This project is versioned using Semantic Versioning. Versions can be specified as a major, minor, or patch version e.g. 1, 1.2, or 1.2.3. The latest version is shown on the GitHub releases page. We recommend fixing to a specific patch version so that upgrades can be checked explicitly before deployment, but as a minimum you should fix to a major version to prevent unexpected breaking changes.

To include the CSS in a HTML project, add the following code inside the <head> of your HTML pages:

<link
  href="https://cdn.jsdelivr.net/npm/iati-design-system@<VERSION>/dist/css/iati.min.css"
  rel="stylesheet"
/>

Once this link is included, core styles will be applied, and all component and layout CSS classes will be available to apply to HTML elements, for example the .iati-button class:

<button class="iati-button">Button</button>

NPM (Optional)

It is also possible to include the design system in a Sass project.

First install with npm:

npm install iati-design-system

Then import the package in your .scss file. The Node.js Package Importer is required to use this syntax.

@use "pkg:iati-design-system";

How do I contribute to the IATI Design System?

Prerequisites

Node v20

IATI Design System requires Node v20. We recommend installing Node Version Manager and running the command nvm use to use the Node version set in the .nvmrc file at the root of the project.

Running locally

To run Storybook locally, take the following steps:

  1. Install dependencies: npm install
  2. Start Storybook: npm start

You will see live updates in the browser when you update styles or stories.

Production build

CSS

To check the CSS production build, take the following steps:

  1. Build the CSS: npm run build
  2. View the CSS file: ./dist/css/iati.css.

Storybook

The check the Storybook production build, take the following steps:

  1. Build the Storybook: npm run build:storybook
  2. Serve the Storybook: npm run serve:storybook

design-system's People

Contributors

tillywoodfield avatar

Watchers

Bee Webb avatar Rob Redpath avatar Simon Whitehouse avatar Bibiana Cristòfol avatar  avatar

design-system's Issues

Fonts

The original brand guidance for fonts says "Pragmatica for headings and Chalet London Sixty for the body copy"

Pragmatica is, as far as I know, fine.

We know that Chalet London Sixty is unavailable and therefore we should choose an alternative.

We might also want to choose a font for tiny text such as is common in d-portal:
Screenshot 2024-08-06 at 14 53 56

(that's Ariel, with text-rendering: optimizeLegibility)

...as I suspect that the font that we choose to look good in as a replacement for body text might not look great when crammed into a 20px high axis label or a 10px codelist description.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.