Hyvor Design System, HDS, is a collection of Svelte UI components for building HYVOR products. It is open-source and you can view the source code on Github. However, it is not recommended to use HDS on non-HYVOR projects as it is not designed to be a general-purpose UI library.
We are incrementally adopting HDS in our products. Here is the current status:
Each HYVOR product has a different accent color scheme, while most of the other colors are the same. See src/lib/variables.css for all available variables. In most cases, you will only have to change the following variables for each product:
:root {
    --accent: #000;
    --accent-light: #bdbdbd;
    --accent-lightest: #fafafa;
}--accent - The accent color of the product. Used for buttons, links, etc. Must be a dark color to be used with white text.--accent-light - A lighter version of the accent color. Used for hover effects. Must be a light color to be used with dark text.--accent-lightest - A very light version of the accent color. Used for backgrounds. Must be closer to white.First, install these two packages:
npm i @hyvor/design
npm i @hyvor/iconsNext, wrap the main layout with <Base>. This component handles a few features like dark mode and internationalization.
// src/routes/+layout.svelte
<script>
    import { Base } from "@hyvor/design/components";
</script>
<Base>
    <slot />
</Base>Then, use the other components as you need!
@hyvor/design/components@hyvor/design/marketing@hyvor/icons. See Icons below for more information.<script>
    import { TextInput, Checkbox } from "@hyvor/design/components";
    import { DocsNav, Header } from '@hyvor/design/marketing';
    import { IconSearch } from '@hyvor/icons';
</script>
<IconSearch size={14} />HDS uses Bootstrap Icons for icons, which contains over 2000 icons. Svelte components for each icon are available in the @hyvor/icons package. In addition to general SVG attributes, the svelte component supports size to set the width and height of the icon.
<script>
    import { IconSearch } from "@hyvor/icons";
</script>
<Search size={14} />Form elements in HDS forward the following events from the underlying HTML elements:
on:keyupon:keydownon:keypresson:focuson:bluron:clickon:mouseoveron:mouseenteron:mouseleaveon:changeon:input (only <TextInput> and <Textarea>)<Checkbox on:change={handleFocus} />