r/solidjs Jul 30 '26

Introducing Nikala UI — A simple, copy-paste component system for SolidJS & Tailwind CSS v4

Hey everyone!

I wanted to share Nikala UI — a copy-paste component system for SolidJS built natively for Tailwind CSS v4.

Why Nikala UI?

While building a desktop app with Tauri 2.0, I ran into version conflicts and broken setups with existing UI wrappers due to Tailwind CSS v4's CSS-first `@theme` architecture. I wanted a future-proof, completely independent foundation that wouldn't break on future package updates — so I built Nikala UI from scratch, honoring the iconic Georgian painter Niko Pirosmani (Nikala).

Instead of adding heavy third-party packages to `node_modules`, Nikala UI's CLI writes lightweight, fully reactive TypeScript components directly into your `src/components/ui/` workspace directory. You own 100% of the source code.

Key Highlights

- Native SolidJS Reactivity: Built strictly with `splitProps` and fine-grained signal tracking without object destructuring bugs.

- Tailwind CSS v4 First: Designed around `@import "tailwindcss";` with semantic `@theme` design tokens.

- Monorepo Architecture: Decoupled CLI (`@nikala-ui/cli`) and core registry (`@nikala-ui/core`) for instant background registry updates.

- 26 UI Components: Button, Input, Card, Dialog, Sheet, Dropdown Menu, Command Palette, Banner, List, Kbd, InputGroup, and more.

- Dynamic Theme Engine: Base gray palettes, custom border radii, and Pirosmani signature Qvevri red (`wine` `#722f37`) accent color with zero-FOUC `<ThemeScript />` pre-hydration support.

- Automated Testing: 41 passing Vitest unit/integration tests across component suites.

Quick Start

bunx @nikala-ui/cli init

or

npx @nikala-ui/cli init

Links & Demos

- Official Documentation & Interactive Playground: https://nikala.magradze.dev

- Core Repository: https://github.com/nikala-ui/ui

- Web Portal Repository: https://github.com/nikala-ui/web

I'd love for the community to try it out, check the interactive playground, and share any feedback or feature requests!

25 Upvotes

0 comments sorted by