@dpa-id-components/dpa-shared-components
| Install | |
|---|---|
npm install @dpa-id-components/dpa-shared-components |
|
| Latest Version: | 23.3.1 |
| Vue: | 3 |
| License: | ISC |
| Last Updated: | Oct 9, 2026 |
| Links: | npm |
DPA shared components library
Collection of common Vue.js components for use in dpa projects.
Content
Requirements
- Node.js (see
engines.nodein package.json for compatible versions) - The packages
@eslint/js @tailwindcss/typography eslint prettier tailwindcss vue vue-router(seepeerDependenciesin package.json for compatible versions)
Getting started
-
Install the package.
pnpm install @dpa-id-components/dpa-shared-components -
Install the peer dependencies.
pnpm install @tailwindcss/typography tailwindcss vue vue-router pnpm install --dev @eslint/js eslint prettier- Tailwind and its plugins are needed because the shared Tailwind preset uses them.
- Vue.js and vue-router are needed because the shared components depend on them.
- ESLint and Prettier are needed because we want to enforce code quality linting and formatting across projects.
-
Integrate the shared CSS and set up code quality linting and code formatting (see the following sections).
Integrate shared Tailwind preset
Reference the Tailwind preset from your CSS entrypoint (e.g. something like a main.css file).
@import "@dpa-id-components/dpa-shared-components/tailwindPreset";
@source "../../node_modules/@dpa-id-components/dpa-shared-components";
/* Make sure to adjust the `..` segments to match where the `node_modules` directory is. Tailwind won't produce an error if the path is wrong. */
/* … */
Set up code quality linting
A shared ESLint configuration is provided at @dpa-id-components/dpa-shared-components/config/eslint.config.js. Use it as a base configuration for code quality linting via ESLint.
Example ESLint configuration:
import sharedConfig from "@dpa-id-components/dpa-shared-components/config/eslint.config.js";
import { globalIgnores } from "eslint/config";
export default [
{
files: ["**/*.ts", "**/*.mts", "**/*.vue"],
},
globalIgnores(["**/dist/", "**/coverage/"]),
...sharedConfig,
{
settings: {
"better-tailwindcss": {
// The CSS entry point has to be manually configured in each host project.
entryPoint: "src/assets/main.css",
},
},
},
{
files: ["**/*.vue"],
rules: {
"vue/no-undef-components": [
"error",
{
// Add globally-registered components here:
ignorePatterns: ["i18n-t", "RouterLink", "RouterView"],
},
],
},
},
];
Set up code formatting
A shared Prettier configuration is provided at @dpa-id-components/dpa-shared-components/config/prettier.config.js. Use it as a base configuration for code formatting via Prettier.
Example Prettier configuration:
import sharedConfig from "@dpa-id-components/dpa-shared-components/config/prettier.config.js";
/**
* @see https://prettier.io/docs/configuration
* @type {import("prettier").Config}
*/
export default {
...sharedConfig,
};
You might also want to add a Prettier ignore file (e.g. for ignoring Markdown files) and set up Prettier in your code editor to automatically format on save.
Usage
To use a component, import its source file directly:
import UiButton from "@dpa-id-components/dpa-shared-components/components/UiButton/UiButton.vue";
Version History
| Version | Released | License |
|---|---|---|
| 23.3.1 | ISC | |
| 23.3.0 | ISC | |
| 23.2.1 | ISC | |
| 23.2.0 | ISC | |
| 23.1.1 | ISC | |
| 23.1.0 | ISC | |
| 23.0.0 | ISC | |
| 22.3.1 | ISC | |
| 22.3.0 | ISC | |
| 22.2.0 | ISC | |
| 22.1.0 | ISC | |
| 22.0.2 | ISC | |
| 22.0.1 | ISC | |
| 22.0.0 | ISC | |
| 21.1.1 | ISC | |
| 21.1.0 | ISC | |
| 21.0.3 | ISC | |
| 21.0.2 | ISC | |
| 21.0.1 | ISC | |
| 21.0.0 | ISC | |
| 20.0.8 | ISC | |
| 20.0.7 | ISC | |
| 20.0.6 | ISC | |
| 20.0.5 | ISC | |
| 20.0.4 | ISC | |
| 20.0.3 | ISC | |
| 20.0.2 | ISC | |
| 20.0.1 | ISC | |
| 20.0.0 | ISC | |
| 19.4.2 | ISC |
Showing the latest 30 of 285. See every release on npm
Pre-releases (53)
| Version | Released | License |
|---|---|---|
| 22.0.0-next.14 | ISC | |
| 22.0.0-next.13 | ISC | |
| 22.0.0-next.12 | ISC | |
| 22.0.0-next.11 | ISC | |
| 22.0.0-next.10 | ISC | |
| 22.0.0-next.9 | ISC | |
| 22.0.0-next.8 | ISC | |
| 22.0.0-next.7 | ISC | |
| 22.0.0-next.6 | ISC | |
| 22.0.0-next.5 | ISC | |
| 22.0.0-next.4 | ISC | |
| 22.0.0-next.3 | ISC | |
| 22.0.0-next.2 | ISC | |
| 22.0.0-next.1 | ISC | |
| 22.0.0-next.0 | ISC | |
| 18.0.0-next.2 | ISC | |
| 18.0.0-next.1 | ISC | |
| 18.0.0-next.0 | ISC | |
| 11.0.0-alpha.0 | ISC | |
| 9.9.0-alpha.1 | ISC | |
| 9.9.0-alpha.0 | ISC | |
| 9.1.1-0 | ISC | |
| 8.13.0-alpha | ISC | |
| 8.11.3-1 | ISC | |
| 8.11.3-0 | ISC | |
| 8.8.2-0 | ISC | |
| 8.5.2-2 | ISC | |
| 8.5.2-1 | ISC | |
| 8.5.2-0 | ISC | |
| 8.5.1-1 | ISC |
Showing the latest 30 of 53. See every release on npm