Skip to content

invopop/popui

Repository files navigation

Popui

Popui is a set of reusable components to be used inside Console UI and other Invopop Apps.

This repository contains:

  • Svelte Component Library - Reusable Svelte components with Tailwind theme configuration

Note: The Go library has been moved to github.com/invopop/popui.go

Svelte Component Library

The Svelte library includes a comprehensive set of reusable UI components built with Svelte 5 and Tailwind CSS.

Running Storybook for Development

Once you've installed dependencies with npm install (or pnpm install or yarn), start the development Storybook server:

cd svelte
npm install
npm run storybook

For using a different accent color for some components you can set the --workspace-accent-color: CSS variable placed in .storybook/variables.css file.

Publishing the Svelte Library

To publish the library to npm, manually increase the version in svelte/package.json and make a PR to the main branch. Once merged, it will automatically release a new version of the library.

Using the Svelte Library

Install the package:

npm install @invopop/popui

Import components in your Svelte app:

<script>
  import { InputText } from '@invopop/popui'
</script>

<InputText
  label="Name"
  placeholder="Company's legal name"
  oninput={(event) => {
    console.log(event.detail)
  }}
/>

A complete catalogue of examples is available on Storybook.

Tailwind Theme

The library exports a Tailwind theme configuration that you can import into your own projects:

@import "@invopop/popui/tailwind.theme.css";

This provides access to the Popui design system's color palette, typography, spacing, and other design tokens.

About

Library of shared, re-usable UI components for Invopop apps

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors