PristineUI is a clean, composable React component library built with Tailwind CSS.
This monorepo contains the library itself, a playground for fast iteration, a demo/landing site, and Storybook.
packages/pristineui— React component library (published to npm)apps/playground— Next.js + Tailwind playground to develop/test components quicklyapps/site— Demo / landing site that consumes the package.changeset/— Changesets (versioning + changelog)
- Node.js (18+)
- pnpm
Install pnpm (if you don't have it):
npm i -g pnpmFrom the repo root:
pnpm installFrom the repo root:
pnpm devThis is intended to run:
packages/pristineui(tsup watch)packages/pristineuiStorybookapps/playgroundNext devapps/siteNext dev
pnpm -C packages/pristineui devpnpm -C packages/pristineui storybookpnpm -C apps/playground devpnpm -C apps/site devpnpm -C packages/pristineui buildpnpm -C packages/pristineui build:cssprepack is configured in packages/pristineui/package.json:
- It runs
pnpm build && pnpm build:css - So publishing will include fresh JS + CSS in
dist/
Install:
pnpm add @gmook9/pristine-uiImport components:
import { Button, Card } from "@gmook9/pristine-ui";Import styles (published from the package):
import "@gmook9/pristine-ui/styles.css";Create a changeset (interactive):
pnpm changesetApply version bumps (writes new versions + changelog updates):
pnpm changeset versionMake sure you're on main, clean working tree, and logged in:
npm whoami
npm loginPublish via changesets:
pnpm changeset publishList tags:
git tagPush tags (if they weren't pushed):
git push --tags