1 of 11

Tutorial 3

CSCI 344: Design Systems

Spring 2026

2 of 11

Announcements

  1. Tutorial 2 (CSS) – Due tonight
  2. HW2 – when you come to class on Monday, try to have at least ½ of it completed, and come with questions
  3. Next Week: Design Mockups with Figma. Before class on Monday:
  4. Today in class: design systems

3 of 11

What is a design system?

4 of 11

Design has become a well-established field

Design has become a well-established field (e.g., Nielsen / Norman Group, UX Certificate Programs, and tech design is its own subfield / specialization within the tech world. Because of this:

  • Many different organizations have codified best practices in interaction design, accessibility, usability, visual design, etc. in UI Kits and design systems.
  • The big idea: instead of making common UX/UI widgets “from scratch,” why not “bootstrap” your website from a baseline set of common widgets and design patterns?

4

5 of 11

Design Systems in Industry

Increasingly, design is becoming separated from implementation in larger tech shops:

  1. Design team works with a baseline “Design System” in Figma (a prototyping tool). This is customized to fit the website’s look-and-feel / brand. Example of FigmaChildcare Network of Evanston
  2. Components and CSS are exported from Figma and “synced” with front-end stylesheet.
  3. So long as the front-end developer is using the correct class names, the design team can work in parallel, with periodic syncing.

5

6 of 11

Examples of UI Kits & Style Guides

6

7 of 11

Introduction to Tailwind

  1. Tailwind CSS is a CSS framework that gives you predefined CSS classes like p-4, text-lg, bg-blue-500
  2. Instead of writing lots of custom CSS rules, you style elements directly in your HTML
  3. It’s not a component library:
    • Tailwind doesn’t give you a button. It gives you the Lego pieces to build your button.

8 of 11

Traditional CSS Approach

�.card {

padding: 1rem;

border-radius: 0.5rem;

background: white;

}

<div class="card">...</div>

9 of 11

Tailwind Approach

��<div class="p-4 rounded-lg bg-white">...</div>

(the classes already exist and do one thing)

10 of 11

But how does it work?

  • Tailwind uses a special tool called a bundler to automatically generate a stylesheet based on all of the embedded classes in your HTML file.
  • To generate your stylesheet, you need to make sure you’re running the bundler

npx tailwindcss -i ./src/input.css -o ./public/output.css --watch

  • The “transpiled” stylesheet will be available in your public folder

11 of 11

Tutorial 3 Setup: Please Listen Carefully

  • If you haven’t yet installed Node.js, you will need to do this
  • Download the tutorial files and save them in your csci344/tutorials directory.
  • Create the node project in the Terminal: npm init --y
  • Install the dependencies and create the public folder:�npm install -D tailwindcss @tailwindcss/cli�mkdir public
  • Run the bundler:�npx tailwindcss -i ./src/input.css -o ./public/output.css --watch