vro.dev

Product-form decision guide

UI source vs component library vs template: what should you use?

Use UI source when you need one focused interface capability that your team can inspect, adapt, and own. Use a component library when many product surfaces need a maintained system of shared primitives, tokens, and APIs. Use a template when you need a broad preassembled page or application structure and are willing to reshape its architecture. vro.dev currently publishes item-level React component source—not a maintained design-system library or a template catalog—so evaluate each record as a focused starting point, then test the delivered version in your project.

Evidence boundary

The definitions and decision matrix compare product form rather than visual style. The vro.dev conclusion is based on the canonical public catalog and three exact published React records reviewed on the stated date. Only product types represented by current public records are shown as vro.dev examples; an empty navigation surface is not treated as published inventory.

Reviewed: by vro.dev product-form and live-catalog review. Correction owner: support@vro.dev.

UI source, component library, and template definitions

  1. 01UI sourceA focused implementation you bring into your own codebase, adapt to the surrounding product, and maintain as local application code.Best when: An existing product needs one distinctive behavior or surface without adopting a new design system.Ownership: Your team owns integration, adaptation, testing, and maintenance after delivery.Tradeoff: Fast local control, but updates are not automatically inherited and project fit still has to be proved.
  2. 02Component libraryA maintained system of reusable primitives, tokens, accessibility conventions, and versioned APIs shared across many product surfaces.Best when: Multiple teams or surfaces need consistent foundations and can follow the library's conventions and upgrade path.Ownership: The library maintainer owns the system contract; adopters own configuration, upgrades, and product-specific composition.Tradeoff: Consistency and shared maintenance in exchange for dependency, convention, migration, and customization constraints.
  3. 03TemplateA broader preassembled page, flow, or application architecture intended to accelerate a new build rather than add one isolated capability.Best when: A new project needs a substantial starting structure and its information architecture is close to the template's assumptions.Ownership: The adopting team owns replacing fixtures, reshaping architecture, verifying licenses, and maintaining the resulting product.Tradeoff: High initial coverage, but greater removal work, hidden assumptions, and potential divergence from the original update path.

Decision matrix

UI product forms compared by scope, dependency, update, and license model.
Product formTypical scopeDependency modelUpdate modelLicense check
UI sourceOne focused capabilityLocal code plus declared packagesYour team ports or reapplies changesExact files, version, receipt, and redistribution boundary
Component libraryShared primitives and systemsMaintained package and conventionsVersioned upgrades and migrationsPackage, asset, trademark, and commercial-use terms
TemplatePage, flow, or application shellBroad architecture and fixture setFork, reconcile, or intentionally divergeCode, fonts, media, demo content, and resale restrictions

Three worked project scenarios

  1. 01Add scheduling to an existing product → UI sourceThe application already has routing, tokens, data, and account flows. A focused scheduling interface can be adapted without importing an unrelated application shell.Verify: Connect real availability and timezone rules server-side, then re-test keyboard, focus, touch, empty, and failure states in the host product.
  2. 02Standardize a product family → Component libraryMany teams need the same primitives, tokens, accessibility rules, release process, and upgrade contract—not a collection of unrelated local implementations.Verify: Evaluate governance, version policy, framework support, accessibility ownership, migration cost, and whether the library's API can survive product variation.
  3. 03Launch a multi-page product shell → TemplateThe work benefits from a coherent page and application structure more than from assembling isolated interface capabilities one at a time.Verify: Audit routing, data boundaries, fixtures, dependencies, authentication assumptions, licensing, performance, and the cost of replacing the template's visual language.

Current vro.dev product form

vro.dev currently publishes item-level React component source. The reviewed public inventory does not establish a maintained design-system library or a template catalog. Use another source when the project needs those broader product forms.

Scheduling input

Availability Calendar

Offer an accessible monthly date chooser with availability states, keyboard movement, a selected-date summary, and a caller-owned scheduling callback.

Product form: UI source component · React 1.0.0

Dependencies: lucide-react, react

Use when: An existing React product needs an adaptable availability-selection surface.

Boundary: It is not a booking backend, timezone authority, or complete scheduling application.

Product hero

Perspective Product Hero

Introduce a software platform through compact navigation, a precise conversion hierarchy, and an original code-native product workspace receding into a perspective runway.

Product form: UI source component · React 1.0.0

Dependencies: react

Use when: A React marketing surface needs a distinctive product-workspace hero direction.

Boundary: It is not a full marketing template, design system, or production content strategy.

Agent workflow interface

Agent Plan Tree

Visualize a live agent execution plan as nested tasks, status changes, dependencies, and assigned tool labels without implying remote execution.

Product form: UI source component · React 1.0.0

Dependencies: lucide-react, react

Use when: An AI-assisted product needs a focused plan-tree interaction to integrate with its own state and agent runtime.

Boundary: It is not an agent backend, orchestration SDK, or complete application shell.

Method and limits

This is a dated selection guide, not a claim that one product form is universally better. Catalog inventory, source versions, dependencies, licenses, and access states can change. Recheck the canonical record and controlling license before use. A public preview does not contain protected source, and entitlement-protected delivery does not make vro.dev a package registry, design-system vendor, or template marketplace.

What is vro.dev? · Source-backed inspiration · Production-readiness checklist · Licensed source guide · Metadata audit · Public catalog · Report a correction