feat: add Vue 3 support via sileo/vue subpath export#10
feat: add Vue 3 support via sileo/vue subpath export#10LokiWasHere wants to merge 1 commit intohiaaryan:mainfrom
Conversation
rivethorn
left a comment
There was a problem hiding this comment.
Tested the components in Vite (React and Vue), Next.js, and Nuxt applications.
Overall, the behavior across all variants is consistent with what’s demonstrated in the documentation site.
However, there are styling issues with the Toaster:
- In dark mode, the description styles are incorrect.
- In light mode, the fill color is white, which makes the Toaster body invisible.
This behavior is consistent in every app mentioned above.
See screenshots below for reference:
Light mode:
Dark mode:
@rivethorn I encountered the same issue & when I inspected how the library was used in the playground, I think he rely on the I would love if the default variant (light & dark) had good text colors, maybe a PR could fix that? |
@LokiWasHere That could fix that, sure. |
|
@hiaaryan We would love to if this component will support vue version |

Summary
Add Vue 3 support alongside the existing React adapter, making sileo a framework-agnostic toast library, closes #8.
src/core/) containing the toast store, API singleton, and generic types, with framework-specific adapters insrc/react/andsrc/vue/ToasterandSileocomponents to Vue 3 usingdefineComponent+h()render functions (no.vueSFCs, no SFC compiler needed) producing identical DOM structure and data attributes so all existing CSS animations work as-isisMountedgate for SSR/Nuxt compatibilitySileoOptions<Renderable>so each adapter re-exports types specialized to its framework (ReactNodefor React,VNodefor Vue)"sileo/vue"subpath export while keeping"sileo"fully backwards compatible for existing React consumers — zero breaking changesUsage
Test plan
import { sileo, Toaster } from "sileo") still work without changesimport { sileo, Toaster } from "sileo/vue"resolves correctly in a Vue 3 projectsuccess,error,warning,info,action,promise,dismiss,clear) from both adaptersbun run buildand confirm both entry points produce correct bundles with proper type declarations