npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@touchable/design-system

v1.0.1

Published

The official accessible Vue 3 design system for Touchable Technologies products.

Readme

Touchable Design System

The official Vue 3 design system from Touchable Technologies.

A visual and technical foundation for consistent, accessible and scalable digital products.

npm license Vue 3 TypeScript

NPM · GitHub · Release v1.0.0 · Changelog

Overview

Touchable Design System is the official source of UI components and design foundations for Touchable Technologies products. It is built for teams shipping Vue 3 applications across the web, server-rendered environments and Capacitor WebViews.

The public API is intentionally composed of individual entrypoints. Import only the components your application uses, keep contracts explicit and let your bundler perform predictable tree-shaking.

Highlights

| Capability | Status | | ------------------------------ | ---------------------------------------------------------------- | | Vue 3 components | Supported | | TypeScript declarations | Included (.d.ts) | | Individual subpath entrypoints | Supported | | Tree-shaking | Supported by ESM entrypoints | | SSR and hydration | Validated with server rendering and stable IDs | | Accessibility | Automated axe, semantic, keyboard and contrast coverage | | Light/dark themes | data-theme="light" and data-theme="dark" | | Reduced motion | prefers-reduced-motion: reduce | | Web and mobile layouts | Validated in desktop and mobile Web flows | | Capacitor/WebView | Web build and configuration validated | | Native iOS/Android | Not claimed; native SDKs are outside this validation environment | | CSS and official tokens | Included through styles.css | | Vue peer dependency | vue: ^3.5.0 | | Source maps | Included in generated distribution output |

Installation

Vue 3 is a peer dependency. Add it explicitly when it is not already provided by your application.

pnpm add vue @touchable/design-system
npm install vue @touchable/design-system
yarn add vue @touchable/design-system

To reproduce the first stable release exactly:

pnpm add @touchable/[email protected]

Global styles

Load the official stylesheet once from your application entrypoint or root layout:

import '@touchable/design-system/styles.css'

It contains the component styles and foundation tokens. Import it once before rendering the application. Do not import internal or src paths.

First use

<script setup lang="ts">
import { Button } from '@touchable/design-system/button'
import '@touchable/design-system/styles.css'
</script>

<template>
  <Button>Continuar</Button>
</template>

Individual imports

Every public component has an explicit subpath:

import { Button } from '@touchable/design-system/button'
import { Input } from '@touchable/design-system/input'
import { Dialog } from '@touchable/design-system/dialog'

This supports smaller bundles, explicit contracts and predictable tree-shaking. There is no public aggregate barrel.

// Not public API
import { Button } from '@touchable/design-system/src'
import { Button } from 'packages/design-system/src'

Public component catalog

This catalog is maintained from the package exports map. All entries use @touchable/design-system/<entrypoint>.

Foundations and layout

Box · Container · Divider · Grid · Inline · Stack · Surface · Text · Heading

Actions and forms

Button · ButtonGroup · IconButton · Input · Label · Field · Hint · Textarea · Checkbox · Radio · RadioGroup · Select · Switch

Data display and feedback

Avatar · Badge · Card · Table · EmptyState · ErrorMessage · Image · Progress · Skeleton · Spinner · Toast · Alert

Navigation and overlays

Breadcrumb · Pagination · Tabs · Dialog · Drawer · DropdownMenu · Popover · Tooltip

The package also exposes ./styles.css and ./package.json. The complete inventory is generated from packages/design-system/package.json so documentation cannot silently add a component that is not public.

Themes and tokens

Choose the theme explicitly on an application root element:

<div data-theme="light"><!-- application --></div>

Use data-theme="dark" for dark mode. The package does not read localStorage or override the consumer's choice. The shipped CSS contains semantic color, typography, spacing, radius, shadow, motion and safe-area tokens. Motion durations collapse to zero when reduced motion is preferred.

Accessibility

Components are developed and validated with practices aligned with WCAG: semantic HTML, accessible labels and roles, visible focus, keyboard interactions, Escape behavior where applicable, pointer/touch behavior and light/dark contrast checks. Automated axe coverage, interaction tests and a dedicated contrast suite are part of the validation record.

This project does not claim formal WCAG certification. Application teams remain responsible for accessible content and integration context.

SSR and hydration

The package is validated with Vue server rendering and hydration. DOM access is guarded in overlay infrastructure, generated IDs are checked for stability, and the SSR audit captures hydration warnings and errors. The same public entrypoints work in SSR applications.

Capacitor and mobile

The components are designed for Vue applications hosted in Capacitor WebViews, including pointer/touch interaction, narrow viewports, portrait and landscape layouts, and safe-area-aware surfaces where applicable. Web build and configuration are validated. Native iOS and Android execution is not claimed because those SDKs are not installed in the package validation environment.

Compatibility

| Technology | Support | | ---------- | -------------------------------------------------------------- | | Vue | ^3.5.0 peer dependency | | TypeScript | Included declarations | | Vite | Validated package and consumer builds | | SSR | Vue server renderer and hydration validated | | Capacitor | WebView/build contract validated | | Nuxt | Repository portal uses Nuxt; package entrypoints are Vue-based | | Node.js | >=20.19.0 <23 |

Versioning

Releases follow Semantic Versioning. Changes are recorded with Changesets, consolidated into the changelog and released through the official main flow. Pin production dependencies to a known version and review release notes before upgrading.

Changelog and releases

Contributing

Report product or API concerns through GitHub Issues. Contributions use the dev branch and follow AGENTS.md, the canonical design-system skills and required validation commands. Pull requests should explain scope, evidence and public-contract impact.

Security

Please do not disclose a suspected vulnerability in a public issue. Contact repository maintainers privately before disclosure. GitHub's security advisories channel is available when enabled.

License

Released under the MIT License.

About Touchable Technologies

Touchable Technologies maintains this design system as the shared visual and technical foundation for its digital products. It helps product teams ship consistent, accessible and scalable Vue experiences without duplicating component contracts across applications.

Touchable Design System is the official component foundation for the Touchable product ecosystem.