Page templates and blocks for snow-ui
Original pages for the free snow-ui React library — sign-in and onboarding, settings and billing, a commerce admin, a CRM — installed as source with the shadcn CLI from a private registry. Yours to read, change and ship.
Built on snow-ui, free and MIT-licensed.
One command per template or block
npx shadcn@latest add @snow-ui-pro/stat-card-grid- Writes the source
components/snow-ui-pro/blocks/StatCardGrid/StatCardGrid.tsx - Adds the snow-ui components it uses
@snow-ui/card, @snow-ui/text - Licence checks in your appNone: the code is yours
Templates built for the work
Each template is a set of pages with the layout its job needs, not one dashboard frame for everything. 5 are ready.
Available
Auth & onboarding
AvailableGetting in, recovering access and reaching the first useful moment, one decision per screen.
- For:
- New sign-ups, returning users, people locked out.
- Layout:
- Focus layout, no navigation
Pages
- Sign in
- Sign up
- Password reset
- Email verification
- Two-factor
- Onboarding
- Getting-started checklist
SaaS settings & billing
AvailableProfile, team and roles, plans and invoices, API keys and an audit log, as long scannable forms beside a section index.
- For:
- Workspace owners, admins and developers.
- Layout:
- Settings layout in a grouped-sidebar app shell
Pages
- Profile
- Workspace
- Members & roles
- Plans
- Billing
- API keys
- Audit log
Commerce admin
AvailableShip today’s orders, handle returns, keep products and stock right, and know the best customers.
- For:
- The operations lead of an online store and its support staff.
- Layout:
- Grouped sidebar with work-queue counts
CRM
AvailableWhat to do next today, a keyboard-accessible pipeline board, contacts and the quarter’s forecast.
- For:
- Account executives and their sales manager.
- Layout:
- Icon rail and saved views
Analytics
AvailableWhether the product is healthier than last period and why: retention cohorts, funnels and acquisition.
- For:
- Product managers and growth analysts.
- Layout:
- Top navigation, full-width charts
Installed like any shadcn component
Pro items live in a private registry next to the public snow-ui one. Your licence key goes in an environment variable; the CLI does the rest.
Set up snow-ui
A project with React 19, Tailwind CSS v4 and the free snow-ui registry. A new project starts from the snow-ui base; an existing one adds the registry and the theme.
Terminal npx shadcn@latest init https://snow-ui.holakirr.com/r/snow-ui.jsonAdd the Pro registry
Both registries go in components.json. The licence key from your purchase email goes in .env.local, and the CLI sends it only to the Pro registry.
components.json { "registries": { "@snow-ui": "https://snow-ui.holakirr.com/r/{name}.json", "@snow-ui-pro": { "url": "https://pro.snow-ui.holakirr.com/r/{name}.json", "headers": { "Authorization": "Bearer ${SNOW_UI_PRO_TOKEN}" } } } }.env.local SNOW_UI_PRO_TOKEN=snowpro_your_licence_keyAdd a template or block
By name. The Pro items it is built from come along, and so do the snow-ui components it uses, from the public registry.
Terminal npx shadcn@latest add @snow-ui-pro/<name>
Held to the library’s standards
Every template and block is built to the same checklist as snow-ui itself. What the code and its tests show today:
Accessible
Built to WCAG 2.2 AA, the library’s bar: one h1 per page, form errors summarised and focused, and no axe violations from 320px up, in light and dark.
Keyboard
Every Auth & onboarding flow, from signing in to setting up two-factor and onboarding, is tested end to end with the keyboard alone.
Right-to-left
Logical properties only, directional icons flipped in right-to-left layouts, and the Auth sign-in and sign-up pages checked in a right-to-left preview.
Dark mode and contrast
Colours come only from the library’s tokens, so pages and blocks follow its light, dark and high-contrast themes with no overrides of their own.
Server-rendered
Blocks and template pages render on the server, which their tests check, and the block previews hydrate in a real browser without console errors.
Tested in CI
Render tests for every block and template page, axe and keyboard runs in a browser, and the registry installed end to end with the shadcn CLI.
Live block previews
Blocks are the parts templates are made of: page headers, metric grids, tables with bulk actions, forms, empty states, a pipeline board. Each gets a live preview with mock data here once it is built.
Stat card grid
Open the previewThis week
- Active users
- 12,480
- +4.2%vs last week
- New sign-ups
- 1,036
- +12.8%vs last week
- Churned accounts
- 38
- −3.1%vs last week
- Open tickets
- 214
- Auth shellThe focus shell of auth and onboarding pages: brand, the form column, a footer and a supporting aside from lg.
- Sign-in formEmail and password, OAuth providers, a sign-in link and SSO detection (try sam@sso.example.com or the password wrong-password).
- Sign-up formName, an email checked on blur (taken@example.com is taken), a password with its strength and rules, and the terms.
- Password resetRequest a link, check your email with a resend timer, choose a new password, done; and the expired-link state.
- Password inputThe library Input with a “Show password” toggle.
- Password strengthA four-segment strength meter and a rule checklist that ticks as the user types.
- One-time code inputOne real input drawn as six cells: paste, SMS autofill and screen readers work. 000000 shows the error.
- Secret revealShow recovery codes or a key once, with copy, download and an acknowledgement.
- Onboarding wizardSteps with progress, Back / Skip / Next, validation and focus on the new step.
- Choice cardsSelectable tiles as a radio or checkbox group, here up to three choices.
- Onboarding checklistGetting-started tasks with progress, as a panel and as the shell’s popover button.
- File dropzoneA file input behind a Browse button with a drop area, type and size checks per file.
- Invite dialogInvite people by email with a role: in a dialog, or inline for onboarding.
- Form error summaryThe errors of a submitted form, each a link to its field, for forms with more than three errors.
- App shell: grouped sidebarThe inset sidebar shell: grouped navigation with counts, an icon rail (⌘B / Ctrl+B), a sheet on phones, a sticky top bar and the page’s main.
- User menuThe avatar menu of the top bar: profile, theme, density, single-key shortcuts and sign out.
- Command menuThe ⌘K / Ctrl+K palette: pages and actions in groups.
- Settings layoutA sticky section index beside a 720px reading column; a section select below lg.
- Page headerThe h1 with a breadcrumb, a description and the actions: one primary, two secondary, the rest in a menu.
- Filter barA search and filters in a row, or behind “Filters · n” in a bottom sheet on small containers.
- Settings sectionA titled group of rows: label and description at the start, the control at the end.
- Sticky save barSave and Discard (⌘S / Ctrl+S) while a form has changes; asks before leaving.
- Usage metersUsage against the plan’s limits, with warnings from 80% and unlimited meters.
- Data tableSortable columns, row selection with Shift ranges and a bulk-actions bar, views, row menus, column priority, stacked rows on small containers, pagination and states.
- Record propertiesOne object’s fields as a definition list whose values edit in place (text, notes, numbers, dates, selects, tags): Enter saves, Escape cancels, the focus returns to the value; copy buttons for IDs and emails.
- Order summaryMoney lines with a total: credits, charges and what is due.
- Empty stateWhat a block shows without data: a first use, no results, nothing to do.
- Pricing plansPlan cards with a monthly / yearly switch, the current plan and a comparison table.
- Toggle matrixPermissions × roles as a table of checkboxes, with locked system roles.
- Danger zoneDestructive actions, confirmed in a dialog; deleting needs the name typed.
- Stat card gridKey metrics of a period: one card per metric with its value and change.
- Bulk actions barWhat to do with the selected rows: the count (announced), the actions and Clear selection, in a bar that sticks to the bottom of the view.
- App shell: top navigationThe pages as links in a sticky top bar (the current one marked), the product, search and the account at the ends; below 1024px the links move into a menu sheet.
- Cohort tableRetention by signup cohort as a real table: every cell prints its value and a five-step tint repeats it, with a legend; future periods stay blank, small cohorts are muted, and up to a set number of cohorts can be picked for a curve.
- Funnel chartConversion through steps: bars from the start edge, the share of the first step and the drop-off in text, who dropped off as a button, the previous period, and the data as a table from the menu.
- App shell: rail and viewsAn icon rail of modules (⌘B / Ctrl+B shows the labels) and a panel of saved views with counts; below xl the views become a picker, below md the rail a sheet.
- Kanban boardColumns of cards moved by drag and drop, by the keyboard (Space, arrows, Space; every step announced) or by a “Move to…” action; one column at a time on phones.
- Ranked listThe top N of something: ranks, values in text and bars of their share.
- Task listA checklist grouped by urgency (check to complete, j / k / x / e inside the list, a collapsed “Done today” group; the focus never drops to the page), or a work queue of counts that link to their lists, “All caught up” when it is empty.
- KPI ribbonHeadline metrics in one panel, horizontal or as a side column, with signed changes coloured by which way is good, sparklines and a goal ring.
- Insight calloutThe page’s headline as one sentence, with the values that matter and a link to act on it.
- Stage pathWhere a record is in its process, as arrow tags that double as the stage control.
- Activity timelineA composer (⌘Enter / Ctrl+Enter saves; the new item takes the focus), pinned items first, then the activity by day.
- Record layoutA record’s header, main column and labelled aside; the aside goes under the main column below xl and both become tabs on phones.
- Split viewA list and the selected item side by side from lg, one pane below; ↑ / ↓ move between the rows.
- Chart cardA panel around one chart with its period, a “Show as a table” switch, and loading, refreshing and error states.
- Merge dialogMerge duplicate records: pick the record and the values to keep, review the result and what happens to the others, then confirm.
An add-on to a free library, not a fork
snow-ui stays free and MIT-licensed: components, charts, the theme and its own registry. Pro adds pages and compositions; every control, overlay, chart and token in them comes from the library.
Questions
Sales open soon
One-time purchase, 12 months of updates, unlimited projects.