CFX UI sandbox
A development surface for the shared primitives in packages/ui. Every page renders real components against fixtures — no auth, no database, no Doppler, no credentials of any kind.
Pages
Each page answers a specific question about a component under conditions a dashboard makes hard to reproduce on demand: an error, an empty result, a slow page, a 400-option list, a 320px viewport.
Selectors
Every paginated-combobox surface — the form field, the multi-select filter editor, the bounded enum, both facet kinds, the applied-filter bar, and the list-page hero — against a fixture source with real latency, paging and failure.
- InfiniteCombobox
- InfiniteComboboxSingle
- StaticComboboxSingle
- FacetPill
- FacetOptionList
- FacetTogglePill
- FilterBar
- CommandSearch
PhoneInput
One specimen per state, then the five form shapes it ships into — real validation, real submit, so alignment and popover containment are visible rather than imagined.
- PhoneInput
Static combobox paging
The `staticOptionsPage` paging check: open a ~400-option list and scroll. Rows must arrive in pages rather than all mounting on open.
- StaticComboboxSingle
Running it
Both commands are equivalent here — this package is tagged no-doppler, so doppler-serve runs the plain serve rather than wrapping it in a doppler run against a project that does not exist.
nx serve ui-sandbox nx doppler-serve ui-sandbox
Where this runs
Deployed from main by the same SST + OpenNext CD the dashboards use. A per-PR pr-<N> stage is also deployed on any PR that touches it, on the raw CloudFront URL — those are the previews, and they are why this app is called a sandbox rather than one.
prod https://ui-sandbox.cfx.to dev https://ui-sandbox.dev.cfx.to