Skip to content

feat(tokenami): add Tokenami component base (full parallel set) - #2

Open
Aniket-508 wants to merge 6 commits into
mainfrom
feat/tokenami-base
Open

feat(tokenami): add Tokenami component base (full parallel set)#2
Aniket-508 wants to merge 6 commits into
mainfrom
feat/tokenami-base

Conversation

@Aniket-508

Copy link
Copy Markdown
Contributor

Summary

Adds a new Tokenami component base alongside the existing StyleX base, with full parity: 54 components under registry/bases/tokenami/ and a matching demo for each under examples-tokenami/ (57 demos).

  • Tokenami base infrastructure + base switcher, theme/config wiring (.tokenami/tokenami.config.ts), and generated styles/tokenami.css.
  • Full component set: primitives, menu-family (dropdown/context/menubar), select/combobox, drawer, navigation-menu, scroll-area, input-otp, carousel, calendar, chart, and the composite sidebar.
  • Stateful styling uses Tokenami selectors (--highlighted_*, --starting_*, --ending_*, etc.) instead of Base UI className callbacks — a direct advantage over the StyleX base.
  • Composite demos: data-table, date-picker, typography.

Verification

  • pnpm tokenami:build — CSS generated cleanly
  • npx tsc --noEmit — 0 type errors
  • pnpm check — 0 errors (warnings are pre-existing a11y patterns mirroring the StyleX demos)

🤖 Generated with Claude Code

Aniket-508 and others added 4 commits June 23, 2026 16:29
Set up Tokenami as a second component base alongside StyleX:
- .tokenami config (theme tokens mapped onto shadcn CSS vars, grid,
  selectors incl. Base UI data-attributes, property->theme-key map) and
  env.d.ts module augmentation; tsconfig plugin + include.
- lib/tokenami.ts configured css() helper.
- Build pipeline: `tokenami:build` generates styles/tokenami.css
  (imported in globals.css), wired into `build`.
- Docs base switcher: BaseProvider context, per-page StyleX/Tokenami
  toggle in ComponentPreview, lazy TokenamiExample loader, base-aware
  ComponentSource + lib/registry resolution.
- First Tokenami component: button (+ demo example).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…aspect-ratio

Port simple primitives to the Tokenami base with demo examples. Keyframes
(pulse/spin) defined as plain CSS in globals; Tokenami components reference
them via --animation-name.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Stateful Base UI components (checkbox/switch) use Tokenami data-attribute
selectors (--checked_*) directly instead of className callbacks. Card spacing
cascades via a --card-spacing custom property.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Port the full 54-component set to registry/bases/tokenami and add a
matching demo for every component under examples-tokenami, reaching
parity with the StyleX base (54 components, 57 demos).

Includes menu-family, select/combobox, drawer, calendar, chart, and the
composite sidebar, plus data-table/date-picker/typography demos. Stateful
styling uses Tokenami selectors (--highlighted_*, --starting_*, etc.)
instead of Base UI className callbacks.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
shadcn-cssinjs Ready Ready Preview, Comment Jul 16, 2026 5:02pm

Request Review

…enami-base

# Conflicts:
#	apps/www/lib/registry.ts
#	apps/www/package.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant