Gathering detailed insights and metrics for @utrecht/component-library-vue
Gathering detailed insights and metrics for @utrecht/component-library-vue
Gathering detailed insights and metrics for @utrecht/component-library-vue
Gathering detailed insights and metrics for @utrecht/component-library-vue
Work in Progress: Utrecht Design System based on the NL Design System architecture. Storybook: https://nl-design-system.github.io/utrecht/storybook/
npm install @utrecht/component-library-vue
Typescript
Module System
Node Version
NPM Version
@utrecht/component-library-css@7.3.0
Updated on Jun 18, 2025
@utrecht/design-tokens@3.3.0
Updated on Jun 18, 2025
@utrecht/tooltip-react@1.0.0
Updated on Jun 18, 2025
@utrecht/tooltip-css@1.0.0
Updated on Jun 18, 2025
@utrecht/component-library-vue@2.3.1
Updated on Jun 16, 2025
@utrecht/design-tokens@3.2.0
Updated on May 27, 2025
TypeScript (73.02%)
SCSS (12.42%)
HTML (5.82%)
JavaScript (4.42%)
MDX (2.33%)
CSS (1.14%)
Vue (0.84%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
EUPL-1.2 License
29 Stars
3,715 Commits
23 Forks
7 Watchers
258 Branches
48 Contributors
Updated on Jun 28, 2025
Latest Version
2.3.0
Package Id
@utrecht/component-library-vue@2.3.0
Unpacked Size
404.83 kB
Size
46.83 kB
File Count
74
NPM Version
10.9.2
Node Version
22.13.1
Published on
Feb 17, 2025
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
73
The @utrecht/component-library-vue
package contains Vue implementations of various components. You can use this package in Vue apps, both client side and server side, to render the right HTML elements with the Utrecht design system class names.
The CSS components that implement the Utrecht design system class names are published in a separate npm package, so don't forget to install and include @utrecht/component-library-css
too for the styling of the white-label components, as well as a package with design tokens for your theme.
The Vue components are released as alpha version, which means the components are still work in progress and it is likely that some APIs will between releases.
Make sure you specify the exact version as dependency, so you can schedule to upgrade to the latest version when you have time to test for regression bugs.
We currently have two packages with Vue components, and you might wonder which to choose. Our Web Components are still experimental and since the Shadow DOM prevents you from simply extending the CSS implementation, you wouldn't be able to easily tweak it to your needs. Therefore we suggest using the Vue components when they are available.
In the future this advice might change since some components could be released exclusively as Web Component while others will remain available as CSS component with Vue wrapper only.
1npm install --save-dev --save-exact @utrecht/component-library-vue
With this package available, you can render any component from the library in your page. For example:
1<script setup lang="ts"> 2import { Document, Heading1 } from "@utrecht/component-library-vue"; 3</script> 4 5<template> 6 <!-- Class name to apply the design tokens from the theme --> 7 <Document class="utrecht-theme"> 8 <Heading1>Page styled with NL Design System</Heading1> 9 </Document> 10</template> 11 12<!--Package with Utrecht design tokens for the white-label components 13Substitute with your another theme for other organisations. --> 14<style src="@utrecht/design-tokens/dist/index.css"></style> 15 16<style src="@utrecht/component-library-vue/dist/style.css"></style>
We make components for Vue available when needed in a project. Not every component is available yet, and we welcome you to discuss contributions.
Currently the following components are available:
1import { 2 Article, 3 BadgeStatus, 4 Button, 5 ButtonGroup, 6 Checkbox, 7 Document, 8 FormField, 9 FormFieldset, 10 FormFieldsetLegend, 11 FormLabel, 12 Heading, 13 Heading1, 14 Heading2, 15 Heading3, 16 Heading4, 17 Heading5, 18 Heading6, 19 Link, 20 Paragraph, 21 Page, 22 PageContent, 23 PageFooter, 24 PageHeader, 25 RadioButton, 26 Select, 27 SelectOption, 28 Textbox, 29 Textarea, 30} from "@utrecht/component-library-vue";
When a project needs a component from the design system that already exists as CSS component with an HTML example, they will create a Vue component for it internally. Projects that have new Vue components can let the design system team know and create a pull request to include it in this component library. No
No vulnerabilities found.
Reason
30 commit(s) and 12 issue activity found in the last 90 days -- score normalized to 10
Reason
no dangerous workflow patterns detected
Reason
all changesets reviewed
Reason
license file detected
Details
Reason
no binaries found in the repo
Reason
all dependencies are pinned
Details
Reason
SAST tool is not run on all commits -- score normalized to 5
Details
Reason
branch protection is not maximal on development and all release branches
Details
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
project is not fuzzed
Details
Reason
83 existing vulnerabilities detected
Details
Score
Last Scanned on 2025-07-07
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More