@prosync_solutions/ui
| Install | |
|---|---|
npm install @prosync_solutions/ui |
|
| Latest Version: | 0.20.0 |
| Vue: | 3 |
| License: | MIT |
| Last Updated: | Sep 8, 2026 |
| Links: | npm |
@prosync_solutions/ui · Prosync Design System
Vue 3 component library and design token system — 22 production-ready components, comprehensive design tokens, and interactive documentation.
📖 View Live Storybook → Browse all components, design tokens, usage guidelines, and interactive examples.
Installation
npm install @prosync_solutions/ui @phosphor-icons/vue
Peer dependencies: vue >=3.3.0 · @phosphor-icons/vue >=2.0.0
Requirements
| Requirement | Version | Notes |
|---|---|---|
| Vue | >= 3.3.0 |
Peer dependency — must be installed in your project |
| @phosphor-icons/vue | >= 2.0.0 |
Peer dependency — used for icons inside components |
| Tailwind CSS | v4 | Required for styles to work — uses @layer base internally |
| @tailwindcss/vite | >= 4.0.0 |
Required Vite plugin to process Tailwind v4 |
| Vite | >= 5.0.0 |
Recommended bundler (the library is built and tested with Vite) |
| TypeScript | >= 5.0 |
Optional — full .d.ts types are included |
Tailwind CSS v4 Setup
This library uses Tailwind CSS v4 internally. Your consumer project must also have Tailwind v4 configured, or you will see this build error:
@layer base is used but no matching @tailwind base directive is present.
Install Tailwind v4:
npm install -D tailwindcss @tailwindcss/vite
Add to vite.config.ts:
import tailwindcss from "@tailwindcss/vite";
export default defineConfig({
plugins: [vue(), tailwindcss()],
});
Add to your main CSS file (e.g. src/style.css):
@import "tailwindcss";
ℹ️ Tailwind v4 does not use
tailwind.config.jsorpostcss.config.js. Configuration is handled entirely through the Vite plugin and your CSS file.
Quick Start
// main.ts
import { createApp } from "vue";
import "@prosync_solutions/ui/style.css"; // design tokens + Tailwind utilities
import App from "./App.vue";
createApp(App).mount("#app");
<!-- Any component -->
<script setup>
import { ProButton, ProInput, ProTag, ProTable } from "@prosync_solutions/ui";
</script>
<template>
<ProInput v-model="name" label="Full Name" placeholder="Enter name" />
<ProButton variant="primary">Submit</ProButton>
<ProTag variant="success">Active</ProTag>
</template>
Global Registration (optional)
import ProsyncUI from "@prosync_solutions/ui";
import "@prosync_solutions/ui/style.css";
app.use(ProsyncUI);
Components
All components ship from a single import path: @prosync_solutions/ui.
Form & Input
| Component | Description |
|---|---|
ProButton |
6 variants (primary, secondary, plain, danger, warning, ghost) · 3 sizes · loading |
ProInput |
Text input with label, required asterisk, info tooltip, and AI-extracted indicator |
ProSelect |
Custom dropdown with search, infinite scroll, keyboard navigation, custom slots |
ProTextarea |
Multi-line input with configurable rows |
ProDatePicker |
Date/range picker with presets |
ProUploadFile |
File upload with drag-and-drop and preview |
Display & Feedback
| Component | Description |
|---|---|
ProTag |
Status badge in 6 variants with optional status prop for auto-mapping |
ProCard |
Flexible content container with configurable padding |
ProBanner |
Informational banner for alerts and announcements |
ProModal |
Dialog overlay — sm / md / lg / xl / full sizes |
ProDrawer |
Slide-in panel from the right edge |
ProToast |
Notification toast — information / success / warn / error |
ProTooltip |
Hover tooltip for additional context |
ProAvatar |
User avatar with xs / sm / md / lg / xl sizes, image or initials fallback |
ProSpinner |
Animated loading spinner |
ProSkeleton |
Skeleton loading placeholder |
ProEmpty |
Empty state illustration and message |
ProStatisticCard |
KPI / metric card with label and value |
Layout & Navigation
| Component | Description |
|---|---|
ProSidebar |
Collapsible navigation sidebar with toggle, localStorage persistence, logo and footer slots |
ProSidebarItem |
Individual sidebar nav item with active state, tooltip, and nested children |
ProTopbar |
Top navigation bar with slots for search, actions, and user menu |
ProPageHeader |
Page-level header with title, breadcrumb, and action slots |
ProBreadcrumbs |
Breadcrumb navigation trail |
ProMenu |
Floating context / dropdown menu |
ProTabs |
Tab bar with slotted panel content |
ProPagination |
Page navigation controls |
ProDivider |
Horizontal or vertical visual separator |
Data
| Component | Description |
|---|---|
ProTable |
Data table with sorting, selection, pagination, search, sticky header, color rules, bold |
ProTableRow |
Table row with slot-based cells |
ProTableCell |
Individual table cell |
ProIconButton |
Compact icon-only button with tooltip |
ProActionMenu |
Action dropdown menu for table rows |
Icons
PDS uses Phosphor Icons as the standard icon set (1,000+ icons × 6 weights).
import { PhEye, PhPencilSimple, PhTrash } from "@phosphor-icons/vue";
| Token | Color | Usage |
|---|---|---|
--color-icon-default |
#1d293d |
Primary icon color (actions, nav) |
--color-icon-default-soft |
#62748e |
Secondary icons, placeholder hints |
--color-icon-disabled |
#90a1b9 |
Non-interactive, locked states |
--color-icon-error |
#c10007 |
Destructive actions (delete, remove) |
See the Design Tokens / ⑨ Icons page in Storybook for the full reference.
Design Tokens
Tokens are available as CSS custom properties.
Key Token Reference
| Token | Value | Usage |
|---|---|---|
--color-brand-primary |
#03439a |
Buttons, focus rings, links |
--color-brand-primary-strong |
#02367b |
Button hover |
--color-text-body |
#1d293d |
Default body text |
--color-text-placeholder |
#62748e |
Input placeholder |
--color-text-error |
#c10007 |
Validation error messages |
--color-surface-sub-bg |
#ffffff |
Input / card background |
--color-surface-error |
#ffe2e2 |
Error tint / danger button bg |
--color-border-border |
#e5e7eb |
Default input/card border |
--radius-button |
6px |
Buttons, inputs, tags |
--radius-card |
12px |
Cards, containers |
--font-open-sans |
Open Sans |
All text |
Full token reference: src/styles/tokens.json
Package Exports
| Import path | Contents |
|---|---|
@prosync_solutions/ui |
All components + types + plugin |
@prosync_solutions/ui/style.css |
Full design token stylesheet |
@prosync_solutions/ui/tokens |
Raw tokens.json |
Development
npm install # install dependencies
npm run storybook # component preview at http://localhost:6006
npm run build # build the library to dist/
🌐 Hosted Storybook: https://prosync-ui-kit-7139f.web.app/
License
MIT © Prosync
Related Packages
main theme file for manguito components library. Other MCL components will need...
Librería de componentes UI en Vue 3 + TypeScript para estandarizar estilos entre...
Version History
| Version | Released | Vue | License |
|---|---|---|---|
| 0.20.0 | ^3.3.0 | MIT | |
| 0.19.1 | ^3.3.0 | MIT | |
| 0.19.0 | ^3.3.0 | MIT | |
| 0.18.0 | ^3.3.0 | MIT | |
| 0.17.1 | ^3.3.0 | MIT | |
| 0.16.0 | ^3.3.0 | MIT | |
| 0.15.1 | ^3.3.0 | MIT | |
| 0.15.0 | ^3.3.0 | MIT | |
| 0.14.1 | ^3.3.0 | MIT | |
| 0.14.0 | ^3.3.0 | MIT | |
| 0.13.0 | ^3.3.0 | MIT | |
| 0.12.0 | ^3.3.0 | MIT | |
| 0.11.0 | ^3.3.0 | MIT | |
| 0.10.0 | ^3.3.0 | MIT | |
| 0.9.0 | ^3.3.0 | MIT | |
| 0.8.2 | ^3.3.0 | MIT | |
| 0.8.1 | ^3.3.0 | MIT | |
| 0.8.0 | ^3.3.0 | MIT | |
| 0.7.1 | ^3.3.0 | MIT | |
| 0.7.0 | ^3.3.0 | MIT | |
| 0.6.0 | ^3.3.0 | MIT | |
| 0.5.0 | ^3.3.0 | MIT | |
| 0.4.0 | ^3.3.0 | MIT | |
| 0.3.1 | ^3.3.0 | MIT | |
| 0.3.0 | ^3.3.0 | MIT | |
| 0.2.2 | ^3.3.0 | MIT | |
| 0.2.0 | ^3.3.0 | MIT | |
| 0.1.9 | ^3.3.0 | MIT | |
| 0.1.8 | ^3.3.0 | MIT | |
| 0.1.7 | ^3.3.0 | MIT |
Showing the latest 30 of 37. See every release on npm