unimo UI components for SolidJS https://unimo-ui-lib.statichost.page/
  • TypeScript 76.1%
  • CSS 23.6%
  • HTML 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jolly Good 3f4bdf5dcf
All checks were successful
ci / formating-nazi (push) Successful in 8s
ci / publish-pages (push) Successful in 10s
added a few more icons
2026-09-07 14:43:05 +02:00
.forgejo/workflows fix the push to staticpage 2026-08-26 17:06:11 +02:00
demo added a few more icons 2026-09-07 14:43:05 +02:00
dist added a few more icons 2026-09-07 14:43:05 +02:00
scripts add dialog, checkbox, motion, skeleton and switch components 2026-09-02 16:32:11 +02:00
src added a few more icons 2026-09-07 14:43:05 +02:00
.gitignore add dist to repo 2026-09-01 11:39:16 +02:00
.prettierignore make formating nazi happy again 2026-09-01 11:43:44 +02:00
bun.lock add command bar, build demo, reformat prettier, and minor styling impros 2026-08-26 12:45:30 +02:00
index.html init 2026-08-24 15:10:22 +02:00
LICENSE Initial commit 2026-08-21 13:11:30 +02:00
package.json add dialog, checkbox, motion, skeleton and switch components 2026-09-02 16:32:11 +02:00
README.md add dialog, checkbox, motion, skeleton and switch components 2026-09-02 16:32:11 +02:00
tsconfig.build.json init 2026-08-24 15:10:22 +02:00
tsconfig.json init 2026-08-24 15:10:22 +02:00
vite.config.ts add badges + sha into footer 2026-08-26 13:20:01 +02:00

ui-lib

formatting license: MIT

SolidJS components for the light DOM.

Use

Import the page's colors once, then import components as you need them:

import 'unimo-ui-lib/tokens.css';
import { Button } from 'unimo-ui-lib';

<Button variant="danger" onClick={save}>
  Delete
</Button>;

Each component carries its own stylesheet, so an unused component costs no JavaScript and no CSS. Components read colors from tokens.css through var(): override a token like --primary on :root to restyle them, dark mode follows prefers-color-scheme.

The uni-enter mount animation lives in a second hand import, unimo-ui-lib/motion.css, because it goes on your own elements rather than on a component.

bun run dev     # demo page
bun run build   # library -> dist/
bun run check   # typecheck + build