Skip to content

About

Official Whop design system

Topics

Resources

Contributing

Stars

294 stars

Watchers

7 watching

Forks

Repository files navigation

Frosted UI

Design system used by Whop

Warning

The design system is still a work in progress so you can expect some breaking changes.

Gray 1

Getting Started

Install Frosted UI:

$ pnpm add frosted-ui

Import the global CSS file at the root of your application:

import 'frosted-ui/styles.css';

Add the Theme component:

import { Theme } from 'frosted-ui';

export default function () {
  return (
    <html>
      <body>
        <Theme>
          <MyApp />
        </Theme>
      </body>
    </html>
  );
}

If your app uses Tooltip, also mount TooltipProvider at the root. It puts every tooltip in a shared delay group, so moving from one trigger to an adjacent one opens the tooltip instantly instead of waiting out the delay again:

import { Theme, TooltipProvider } from 'frosted-ui';

<TooltipProvider>
  <Theme>
    <MyApp />
  </Theme>
</TooltipProvider>;

This stays opt-in and out of Theme. TooltipProvider is the only way to mount the delay group, and importing it does not include the tooltip popup.

Emoji colors

getColorForEmoji and emojiColorMap live on their own subpath rather than the package root, because the generated lookup table is ~40 kB:

import { getColorForEmoji } from 'frosted-ui/helpers/emoji-colors';

const color = getColorForEmoji('❤️') ?? 'gray';

Guides

Acknowledgments

Frosted UI is heavily based on Radix Themes design system and Radix Icons.

About

Official Whop design system

Topics

Resources

Contributing

Stars

294 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages