LinusBorg/portal-vue
A feature-rich Portal Plugin for Vue 3, for rendering DOM outside of a component, anywhere in your app or the entire document. (Vue 2 version: v2.portal-vue.linusb.org) observed · 2026-08-28
Health v2 · maintenance only
23/100
- Activity 0
- Release rhythm 8
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 3532
- days_rel: n/a
- days_push: 1012
- n_releases_24m: 0
Adoption not part of the score
3887 stars · 182 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
PortalVue is a Vue 3 plugin providing Portal and PortalTarget components that render a component's template anywhere in the DOM, even outside the Vue app's root element. It is an alternative to Vue's built-in Teleport with additional features like named portals and source toggling.
Use cases
- render modals at the document body level
- render tooltips or popovers outside the component tree
- teleport slot content to a named target elsewhere in the app
- build overlay and dialog systems in Vue 3
- render content outside the Vue app mount element
When to choose
- you need named portals or features beyond Vue's built-in Teleport
- you maintain a Vue 2 codebase using portal-vue v2
- you need fine-grained control over where content renders in the DOM
When to avoid
- you only need basic teleporting - Vue 3's built-in Teleport is recommended by the author
- you need a Nuxt module integration for Vue 3 (not yet available)
- you need to support legacy browsers without ES Modules support
Facets
library · maturity maintenance
ui-components frontend-framework templating frontend web-development browser cross-platform vue vue3 portal dom-rendering teleport overlays modals nodejs
5 sources
- readme: https://github.com/LinusBorg/portal-vue · fetched 2026-08-28 · 3f61124082bb
- homepage: http://portal-vue.linusb.org · fetched 2026-08-29 · 76b77520f99b
- site_page: https://portal-vue.linusb.org/guide/getting-started · fetched 2026-08-29 · a30246428c44
- registry_npm: https://registry.npmjs.org/portal-vue · fetched 2026-08-29 · 06868c256fa1
- site_page: https://v2.portal-vue.linusb.org · fetched 2026-08-29 · 4aceceeaa858
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| LinusBorg/portal-vue | main | 23 |
For agents
markdown · JSON · MCP: product_card(name="LinusBorg/portal-vue")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem