gmz.dev / docs / patterns
Shared UI, interaction, and logic patterns.
living document; patterns can be added or retired.

Patterns & interfaces

This document captures reusable patterns used across tools (SiteTax, Watermarkd, future apps). The goal is consistency: similar problems should feel similar to use.

General principles

Numeric input pattern

For values like amounts, percentages, or positions, use a combination of:

Rule: the value should always be readable and copyable as text.

Result card pattern

For tools that compute something (tax classification, exports, totals):

Example (SiteTax): Taxable – job marked as repair. Repairs are generally taxable.

Explanation line

Every important decision produced by logic should have a plain-language explanation line.

Toggle / override pattern

When the user can override a logic decision (e.g. marking something non-taxable):

Layout: single-column

Most tools should follow a single-column layout, especially on mobile:

Text & tone

Platform notes

Web

iOS

Pattern backlog

Patterns that might be formalized later: