Introduction

A UI tracking platform that connects annotations, acceptance criteria, and Playwright flows into a typed registry.

uidex is a static-analysis + runtime tracking system for UIs. It scans your source for data-uidex* attributes and export const uidex declarations, emits a typed registry (uidex.gen.ts), and powers a dev-time overlay with an inspector, command palette, and detail panels.

Eight entity kinds make up the registry — routes, pages, features, widgets, regions, elements, primitives, and flows — each discovered by convention or annotation.

How it works

  1. Annotate — add data-uidex attributes to interactive elements, declare acceptance criteria with export const uidex, and write Playwright flows tagged @uidex:flow.
  2. Scannpx uidex scan walks your source, extracts annotations, resolves conventions, and emits uidex.gen.ts with typed id unions.
  3. Mount — the SDK mounts a Shadow DOM overlay in dev mode. Hover highlights annotated elements, click opens an element menu, and ⌘K opens the command palette.
  4. Auditnpx uidex scan --audit validates annotation coverage, flags missing acceptance criteria, and checks that flows cover declared criteria.

Where to go next