Skip to content

feat(ui): add component registry - #987

Draft
janburzinski wants to merge 1 commit into
mainfrom
feat/ui-component-registry
Draft

janburzinski wants to merge 1 commit into
mainfrom
feat/ui-component-registry

Conversation

@janburzinski

@janburzinski janburzinski commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Description

Give a short summary of what this PR does and why it's needed.

Screenshot/Recording (if applicable)

Attach a screenshot or recording of the change. This is optional, but can help reviewers understand the change. You can use Cap to record a video.

Checklist
  • I ran a self-review before opening this PR
  • I ran formatting/linting/type checks locally
  • I updated docs when behavior or setup changed
  • I only added comments where the logic is not obvious
  • I have used conventional commits for the PR title and commit messages
  • I did not use AI to write the code in this PR or have disclosed that I did

Summary by cubic

Adds a shadcn registry for Notra UI components so any project can install them with npx shadcn@latest add @notra/button and similar. The registry is generated from the packages/ui source and served from the apps/ui site; the dashboard's local button wrapper is removed because the button now carries the squircle styling directly.

Registry

  • packages/ui/scripts/build-registry.ts runs shadcn build and rewrites internal aliases to the consumer's @/ paths.
  • The generated items land in apps/ui/public/r/ with a catalog at /r/registry.json.
  • Both packages/ui and apps/dashboard register @notra as a local registry URL (port 3006) in components.json.

Component changes

  • Button, Input, Select, Table, and Tabs gain new size/variant props and consistent focus and error rings.
  • Dark mode now also activates under [data-theme="dark"] as well as .dark.
  • apps/ui/docs gains a page per primitive with live examples and an API reference.

Written for commit c5cd5d5. Summary will update on new commits.

Review in cubic

@vercel

vercel Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

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

Project Deployment Actions Updated
notra Ready Ready Preview Sep 9, 2026 7:30pm UTC
notra-agent Ready Ready Preview Sep 9, 2026 7:30pm UTC
notra-onboarding-agent Ready Ready Preview Sep 9, 2026 7:30pm UTC
notra-ui Ready Ready Preview Sep 9, 2026 7:30pm UTC
notra-web Ready Ready Preview Sep 9, 2026 7:30pm UTC

Request Review

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown

React Doctor found 1 new issue in 1 file · 1 warning · score 87 / 100 (Great) · 0 fixed · vs main

1 warning

src/components/ui/input.tsx

  • ⚠️ L41 Non-component export in component file only-export-components

Reviewed by React Doctor for commit c5cd5d5. See inline comments for fixes.

}

export { Input };
export { Input, inputVariants };

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

React Doctor · react-doctor/only-export-components (warning)

This file exports non-components, so Fast Refresh can't safely preserve component state.

Fix → Move non-component exports out of component files so Fast Refresh can preserve component state instead of full-reloading.

Docs

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