Skip to content

refactor: remove lit dependency - #6

Merged
katorly merged 9 commits into
mainfrom
dev
Sep 14, 2026
Merged

katorly merged 9 commits into
mainfrom
dev

Conversation

@katorly

@katorly katorly commented Aug 24, 2026

Copy link
Copy Markdown
Member

📝 Description

The goal is to remove the lit dependency, by utilizing native HTML elements. Components that don't have native HTML elements will use class, option, role.

Before:

<ore-button type="button" variant="hero" color="secondary" loading>Create new world</ore-button>

After:

<button type="button" data-variant="hero" data-color="secondary" data-loading aria-busy="true" disabled>Create new world</button>

For frameworks other than vanilla, there's nothing needs to change.

On the surface, it makes the vanilla code longer, but under the hood, we no longer have to maintain a separate codebase that duplicates vanilla's, which makes the library lighter and easier to maintain.

🔄 Change type

  • fix
  • feat
  • perf
  • refactor
  • style
  • docs
  • build
  • ci
  • test
  • chore

🔗 Related issues

🧪 Testing

📸 Screenshots / recordings

💬 Additional information

The version number must be 0.1.0 to merge this Pull Request.

@vercel

vercel Bot commented Aug 24, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
oreui Ready Ready Preview Sep 14, 2026 8:25am UTC

@coderabbitai

coderabbitai Bot commented Aug 24, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 292 files, which is 192 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 469e05e8-33d1-4707-b7cf-25c1c25a5504

📥 Commits

Reviewing files that changed from the base of the PR and between 06e9ba1 and cce96a3.

⛔ Files ignored due to path filters (2)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • src/assets/icons/spinner.svg is excluded by !**/*.svg
📒 Files selected for processing (292)
  • docs/components/home-page.tsx
  • docs/components/home-showcase.tsx
  • docs/components/stories/accordion.story.tsx
  • docs/components/stories/button.story.tsx
  • docs/components/stories/checkbox.story.tsx
  • docs/components/stories/icon-button.story.tsx
  • docs/components/stories/modal.story.tsx
  • docs/components/stories/progress-bar.story.tsx
  • docs/components/stories/progress-ring.story.tsx
  • docs/components/stories/radio-group.story.tsx
  • docs/components/stories/select.story.tsx
  • docs/components/stories/slider.story.tsx
  • docs/components/stories/spinner.story.tsx
  • docs/components/stories/switch.story.tsx
  • docs/components/stories/tab-bar.story.tsx
  • docs/components/stories/textarea.story.tsx
  • docs/components/stories/textfield.story.tsx
  • docs/components/stories/toggles.story.tsx
  • docs/content/docs/buttons/button.mdx
  • docs/content/docs/buttons/button.zh-CN.mdx
  • docs/content/docs/buttons/icon-button.mdx
  • docs/content/docs/buttons/icon-button.zh-CN.mdx
  • docs/content/docs/buttons/tab-button.mdx
  • docs/content/docs/buttons/tab-button.zh-CN.mdx
  • docs/content/docs/controls/checkbox.mdx
  • docs/content/docs/controls/checkbox.zh-CN.mdx
  • docs/content/docs/controls/dropdown.mdx
  • docs/content/docs/controls/dropdown.zh-CN.mdx
  • docs/content/docs/controls/meta.json
  • docs/content/docs/controls/meta.zh-CN.json
  • docs/content/docs/controls/radio-group.mdx
  • docs/content/docs/controls/radio-group.zh-CN.mdx
  • docs/content/docs/controls/radio.mdx
  • docs/content/docs/controls/radio.zh-CN.mdx
  • docs/content/docs/controls/select.mdx
  • docs/content/docs/controls/select.zh-CN.mdx
  • docs/content/docs/controls/slider.mdx
  • docs/content/docs/controls/slider.zh-CN.mdx
  • docs/content/docs/controls/switch.mdx
  • docs/content/docs/controls/switch.zh-CN.mdx
  • docs/content/docs/controls/textarea.mdx
  • docs/content/docs/controls/textarea.zh-CN.mdx
  • docs/content/docs/controls/textfield.mdx
  • docs/content/docs/controls/textfield.zh-CN.mdx
  • docs/content/docs/controls/toggles.mdx
  • docs/content/docs/controls/toggles.zh-CN.mdx
  • docs/content/docs/css-variable-override.mdx
  • docs/content/docs/css-variable-override.zh-CN.mdx
  • docs/content/docs/getting-started/astro.mdx
  • docs/content/docs/getting-started/astro.zh-CN.mdx
  • docs/content/docs/getting-started/svelte.mdx
  • docs/content/docs/getting-started/svelte.zh-CN.mdx
  • docs/content/docs/getting-started/vanilla.mdx
  • docs/content/docs/getting-started/vanilla.zh-CN.mdx
  • docs/content/docs/getting-started/vue.mdx
  • docs/content/docs/getting-started/vue.zh-CN.mdx
  • docs/content/docs/guides/composition.mdx
  • docs/content/docs/guides/composition.zh-CN.mdx
  • docs/content/docs/guides/forms-and-events.mdx
  • docs/content/docs/guides/forms-and-events.zh-CN.mdx
  • docs/content/docs/guides/state-and-accessibility.mdx
  • docs/content/docs/guides/state-and-accessibility.zh-CN.mdx
  • docs/content/docs/guides/styling.mdx
  • docs/content/docs/guides/styling.zh-CN.mdx
  • docs/content/docs/icons.mdx
  • docs/content/docs/icons.zh-CN.mdx
  • docs/content/docs/layout/container.mdx
  • docs/content/docs/layout/container.zh-CN.mdx
  • docs/content/docs/layout/divider.mdx
  • docs/content/docs/layout/divider.zh-CN.mdx
  • docs/content/docs/loading-and-progress/progress-bar.mdx
  • docs/content/docs/loading-and-progress/progress-bar.zh-CN.mdx
  • docs/content/docs/loading-and-progress/progress-ring.mdx
  • docs/content/docs/loading-and-progress/progress-ring.zh-CN.mdx
  • docs/content/docs/loading-and-progress/spinner.mdx
  • docs/content/docs/loading-and-progress/spinner.zh-CN.mdx
  • docs/content/docs/messages/accordion.mdx
  • docs/content/docs/messages/accordion.zh-CN.mdx
  • docs/content/docs/messages/card.mdx
  • docs/content/docs/messages/card.zh-CN.mdx
  • docs/content/docs/messages/modal.mdx
  • docs/content/docs/messages/modal.zh-CN.mdx
  • docs/content/docs/messages/table.mdx
  • docs/content/docs/messages/table.zh-CN.mdx
  • docs/content/docs/messages/tag.mdx
  • docs/content/docs/messages/tag.zh-CN.mdx
  • docs/content/docs/messages/toast.mdx
  • docs/content/docs/messages/toast.zh-CN.mdx
  • docs/content/docs/messages/tooltip.mdx
  • docs/content/docs/messages/tooltip.zh-CN.mdx
  • docs/content/docs/navigation/meta.json
  • docs/content/docs/navigation/meta.zh-CN.json
  • docs/content/docs/navigation/navbar.mdx
  • docs/content/docs/navigation/navbar.zh-CN.mdx
  • docs/content/docs/navigation/scrollbar.mdx
  • docs/content/docs/navigation/scrollbar.zh-CN.mdx
  • docs/content/docs/navigation/tab-bar.mdx
  • docs/content/docs/navigation/tab-bar.zh-CN.mdx
  • docs/content/docs/overview.mdx
  • docs/content/docs/overview.zh-CN.mdx
  • docs/package.json
  • package.json
  • packages/react/package.json
  • packages/react/src/components/accordion.ts
  • packages/react/src/components/button.ts
  • packages/react/src/components/card.ts
  • packages/react/src/components/card.tsx
  • packages/react/src/components/checkbox.ts
  • packages/react/src/components/container.ts
  • packages/react/src/components/container.tsx
  • packages/react/src/components/divider.ts
  • packages/react/src/components/divider.tsx
  • packages/react/src/components/dropdown.ts
  • packages/react/src/components/icon-button.ts
  • packages/react/src/components/modal.ts
  • packages/react/src/components/navbar.ts
  • packages/react/src/components/navbar.tsx
  • packages/react/src/components/progress-bar.ts
  • packages/react/src/components/progress-ring.ts
  • packages/react/src/components/radio-group.ts
  • packages/react/src/components/radio.ts
  • packages/react/src/components/scrollbar.ts
  • packages/react/src/components/select.tsx
  • packages/react/src/components/slider.ts
  • packages/react/src/components/spinner.ts
  • packages/react/src/components/switch.ts
  • packages/react/src/components/tab-bar.ts
  • packages/react/src/components/tab-button.ts
  • packages/react/src/components/table.ts
  • packages/react/src/components/tag.ts
  • packages/react/src/components/tag.tsx
  • packages/react/src/components/textarea.ts
  • packages/react/src/components/textarea.tsx
  • packages/react/src/components/textfield.ts
  • packages/react/src/components/textfield.tsx
  • packages/react/src/components/toast.ts
  • packages/react/src/components/toggles.ts
  • packages/react/src/components/tooltip.ts
  • packages/react/src/index.ts
  • packages/solid/package.json
  • packages/solid/src/components/accordion.tsx
  • packages/solid/src/components/button.tsx
  • packages/solid/src/components/card.tsx
  • packages/solid/src/components/checkbox.tsx
  • packages/solid/src/components/container.tsx
  • packages/solid/src/components/divider.tsx
  • packages/solid/src/components/dropdown.tsx
  • packages/solid/src/components/icon-button.tsx
  • packages/solid/src/components/modal.tsx
  • packages/solid/src/components/navbar.tsx
  • packages/solid/src/components/progress-bar.tsx
  • packages/solid/src/components/progress-ring.tsx
  • packages/solid/src/components/radio-group.tsx
  • packages/solid/src/components/radio.tsx
  • packages/solid/src/components/scrollbar.tsx
  • packages/solid/src/components/select.tsx
  • packages/solid/src/components/slider.tsx
  • packages/solid/src/components/spinner.tsx
  • packages/solid/src/components/switch.tsx
  • packages/solid/src/components/tab-bar.tsx
  • packages/solid/src/components/tab-button.tsx
  • packages/solid/src/components/table.tsx
  • packages/solid/src/components/tag.tsx
  • packages/solid/src/components/textarea.tsx
  • packages/solid/src/components/textfield.tsx
  • packages/solid/src/components/toast.tsx
  • packages/solid/src/components/toggles.tsx
  • packages/solid/src/components/tooltip.tsx
  • packages/solid/src/index.ts
  • packages/solid/vite.config.ts
  • packages/svelte/package.json
  • packages/svelte/src/components/accordion.svelte
  • packages/svelte/src/components/button.svelte
  • packages/svelte/src/components/card.svelte
  • packages/svelte/src/components/checkbox.svelte
  • packages/svelte/src/components/container.svelte
  • packages/svelte/src/components/divider.svelte
  • packages/svelte/src/components/dropdown.svelte
  • packages/svelte/src/components/icon-button.svelte
  • packages/svelte/src/components/modal.svelte
  • packages/svelte/src/components/navbar.svelte
  • packages/svelte/src/components/progress-bar.svelte
  • packages/svelte/src/components/progress-ring.svelte
  • packages/svelte/src/components/radio-group.svelte
  • packages/svelte/src/components/radio.svelte
  • packages/svelte/src/components/scrollbar.svelte
  • packages/svelte/src/components/select.svelte
  • packages/svelte/src/components/slider.svelte
  • packages/svelte/src/components/spinner.svelte
  • packages/svelte/src/components/switch.svelte
  • packages/svelte/src/components/tab-bar.svelte
  • packages/svelte/src/components/tab-button.svelte
  • packages/svelte/src/components/table.svelte
  • packages/svelte/src/components/tag.svelte
  • packages/svelte/src/components/textarea.svelte
  • packages/svelte/src/components/textfield.svelte
  • packages/svelte/src/components/toast.svelte
  • packages/svelte/src/components/toggles.svelte
  • packages/svelte/src/components/tooltip.svelte
  • packages/svelte/src/elements.d.ts
  • packages/svelte/src/index.ts
  • packages/vue/package.json
  • packages/vue/src/components/accordion.ts
  • packages/vue/src/components/button.ts
  • packages/vue/src/components/card.ts
  • packages/vue/src/components/checkbox.ts
  • packages/vue/src/components/container.ts
  • packages/vue/src/components/divider.ts
  • packages/vue/src/components/dropdown.ts
  • packages/vue/src/components/icon-button.ts
  • packages/vue/src/components/modal.ts
  • packages/vue/src/components/navbar.ts
  • packages/vue/src/components/progress-bar.ts
  • packages/vue/src/components/progress-ring.ts
  • packages/vue/src/components/radio-group.ts
  • packages/vue/src/components/radio.ts
  • packages/vue/src/components/scrollbar.ts
  • packages/vue/src/components/select.ts
  • packages/vue/src/components/slider.ts
  • packages/vue/src/components/spinner.ts
  • packages/vue/src/components/switch.ts
  • packages/vue/src/components/tab-bar.ts
  • packages/vue/src/components/tab-button.ts
  • packages/vue/src/components/table.ts
  • packages/vue/src/components/tag.ts
  • packages/vue/src/components/textarea.ts
  • packages/vue/src/components/textfield.ts
  • packages/vue/src/components/toast.ts
  • packages/vue/src/components/toggles.ts
  • packages/vue/src/components/tooltip.ts
  • packages/vue/src/index.ts
  • scripts/components.js
  • scripts/copy-assets.js
  • src/components/accordion/accordion.css
  • src/components/accordion/accordion.ts
  • src/components/button/button.css
  • src/components/button/button.ts
  • src/components/card/card.css
  • src/components/card/card.ts
  • src/components/checkbox/checkbox.css
  • src/components/checkbox/checkbox.ts
  • src/components/container/container.css
  • src/components/container/container.ts
  • src/components/divider/divider.css
  • src/components/divider/divider.ts
  • src/components/dropdown/dropdown.css
  • src/components/dropdown/dropdown.ts
  • src/components/icon-button/icon-button.css
  • src/components/icon-button/icon-button.ts
  • src/components/modal/modal.css
  • src/components/modal/modal.ts
  • src/components/navbar/navbar.css
  • src/components/navbar/navbar.ts
  • src/components/progress-bar/progress-bar.css
  • src/components/progress-bar/progress-bar.ts
  • src/components/progress-ring/progress-ring.css
  • src/components/progress-ring/progress-ring.ts
  • src/components/radio-group/radio-group.css
  • src/components/radio-group/radio-group.ts
  • src/components/radio/radio.css
  • src/components/radio/radio.ts
  • src/components/scrollbar/scrollbar.css
  • src/components/scrollbar/scrollbar.ts
  • src/components/select/select.css
  • src/components/slider/slider.css
  • src/components/slider/slider.ts
  • src/components/spinner/spinner.css
  • src/components/spinner/spinner.ts
  • src/components/switch/switch.css
  • src/components/switch/switch.ts
  • src/components/tab-bar/tab-bar.css
  • src/components/tab-bar/tab-bar.ts
  • src/components/tab-button/tab-button.css
  • src/components/tab-button/tab-button.ts
  • src/components/table/table.css
  • src/components/table/table.ts
  • src/components/tag/tag.css
  • src/components/tag/tag.ts
  • src/components/textarea/textarea.css
  • src/components/textarea/textarea.ts
  • src/components/textfield/textfield.css
  • src/components/textfield/textfield.ts
  • src/components/toast/toast.css
  • src/components/toast/toast.ts
  • src/components/toggles/toggles.css
  • src/components/toggles/toggles.ts
  • src/components/tooltip/tooltip.css
  • src/components/tooltip/tooltip.ts
  • src/index.ts
  • src/styles/index.css
  • src/styles/reset.css
  • vite.config.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

- refactor button, checkbox, radio, radiogroup, switch, slider, textfield, textarea components
- update wrappers & docs

🤖Some parts of this change were assisted by AI.
Co-authored-by: Codex <codex@openai.com>
- refactor divider, tag, card, container, navbar, spinner, progress, progress ring, scrollbar, icon button components
- update wrappers & docs

🤖Some parts of this change were assisted by AI.
Co-authored-by: Codex <codex@openai.com>
katorly and others added 2 commits August 27, 2026 13:36
- refactor accordion, modal, table components
- update wrappers & docs

🤖Some parts of this change were assisted by AI.
Co-authored-by: Codex <codex@openai.com>
- add native select component
- refactor dropdown, tooltip, tab button, toggles, toast components
- update wrappers & docs

🤖Some parts of this change were assisted by AI.
Co-authored-by: Codex <codex@openai.com>
- now vanilla components have to use `ore-*` CSS classes explicitly, while non-vanilla packages don't have to
@katorly
katorly merged commit dd210df into main Sep 14, 2026
3 checks passed
@katorly
katorly deleted the dev branch September 14, 2026 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant