wild-simple is a simple, single-page calculator design. The product exists to give anyone who needs fast arithmetic a calm, focused place to enter numbers and operators and read a clear result. The entire product is one page: a large result display above a key grid, presented with quiet precision — a dark graphite field, hairline rules, soft continuous-curve keys, and a single warm orange equals key as the only accent.
The audience is any person who opens the page to perform basic arithmetic. There is no account, no sign-in, and no saved history: the calculator is an anonymous, public, single-page tool. The design is deliberately simple and restrained, following a Jony Ive-inspired direction in which the number is the single subject and nothing decorative appears that is not a control.
This document is the System Requirements Document for the project named wild-simple, requested by Diya Trivedi.
wild-simple is delivered as a single first-party web page, Calculator, that is publicly reachable with no identity, no account, and no session continuity. The page is the anonymous public entry and holds all calculator work: entering numbers and operators, computing a result, and reading it. Because the product is explicitly a single-page design and no durable, actor-specific state is required, there is no application-owned identity, no login, and no protected destination.
The calculator's arithmetic runs in the browser as part of the page interaction; the provisioned shared backend, database, and frontend services exist as the project's runtime scaffold but do not add product behavior. No data is persisted, and no server round-trip is required for a calculation. The current delivery horizon is exactly this one page and its arithmetic interaction. There are no future-horizon features defined in the authoritative requirements.
The single page of the product. It is the anonymous public entry and the complete working surface for all calculator behavior.
clamp(56px, 12vw, 128px).0).0–9 to enter numbers.+, −, ×, ÷ to choose an operation.= to compute and show the result; it is the only orange element and pulses once when a result lands.#FF6B2C) key, distinguished from all others.FR-1 — Enter numbers and operators to calculate a result (explicit) As a Calculator user, I should enter numbers and operators on the Calculator page so that I can calculate a result.
FR-2 — Compute and display the result (explicit) As a Calculator user, I should press the equals key so that the calculator computes and shows the result of my expression.
FR-3 — Clear the current calculation (required_inference) As a Calculator user, I should clear the current entry and expression so that I can start a new calculation after a mistake or a completed result.
FR-4 — Enter fractional values (required_inference) As a Calculator user, I should enter a decimal point so that I can calculate with fractional numbers.
FR-5 — Toggle the sign of the current entry (required_inference) As a Calculator user, I should toggle the sign of the current entry so that I can calculate with negative numbers.
FR-6 — Convert the current entry to a percentage (required_inference) As a Calculator user, I should apply the percent key so that I can use a percentage value in my calculation.
+, −, ×, or ÷). The operator is registered as pending. (Decision: which operation.)The visual direction is Quiet precision for a calculator, after Jony Ive. The number is the single subject; nothing decorative appears that is not a control.
Mode: dark.
Colour tokens (exact hex by role)
#111214 (graphite ground, ~70 percent of the frame)#1B1D20 (calculator panel and keys)#F4F3F1 (result numerals and labels)#E8E6E1 (key faces and primary controls)#FF6B2C (the equals key only)#8A8D91 (secondary labels and hairline rules)Typography
clamp(56px, 12vw, 128px).Shape language
Layout
Imagery
Avoid: no blue or indigo accent on a white ground; no gradient blobs or floating decoration; no grid of identical hover-lift cards; no playful stickers or emoji; no stock photography of people.
The public entry is a dark graphite field holding one floating calculator panel with soft edge light. A single oversized result numeral — clamp(56px, 12vw, 128px) — spans the panel top, sitting alone on a dark graphite band and filling the panel width at every viewport. A hairline rule separates the result band from the key grid and runs edge to edge. The keys use soft continuous-curve radii with a 1px aluminium top edge that catches a soft light. The equals key is the only orange element in the frame and pulses once when a result lands. The composition recomposes only the accepted calculator content — the result display, the key grid, and the equals key — with no added behavior or destination.
Interaction Model: Animated Motion Tempo: restrained Hero Dimensionality: layered_2d
Landing Hero Motion Brief
prefers-reduced-motion, the load reveal and the equals pulse are suppressed; the panel appears in its final static arrangement and key presses update the display without animated easing, keeping every control and numeral fully readable.font-size: clamp(...)) to fit, with no other element covering any part of them.prefers-reduced-motion, a usable static arrangement is provided; motion is suppressed without hiding content or controls.#FF6B2C) key that computes the result and pulses once when a result lands.

No comments yet. Be the first!