sky-start is a simple calculator delivered as a single page. The product intent is narrow and complete: a person opens one page, enters numbers and operations, and reads the arithmetic result. There is no account, no saved history, no multi-page navigation, and no surrounding application shell beyond the calculator itself.
The audience is everyday users who need quick, light arithmetic in a browser. The experience should feel quick and confident rather than corporate: one screen that reads like a small brand, not a template.
This document is the System Requirements Document for sky-start. It specifies the calculator's behavior, its single page, its visual and motion direction, and the technical delivery boundary.
sky-start is a one-page web calculator. The single page, Calculator, is the anonymous public entry and the entire product surface. A user types digits, chooses an operator, and evaluates an expression; the page shows the running entry and the result.
Current delivery consists of:
Actors:
Narrow exclusions: no authentication, no user accounts, no saved calculation history, no sharing, no multi-page navigation, no settings, no unit conversion, no scientific or programmer modes beyond the arithmetic operations specified in Section 3.
Removed from scope
sky-start is delivered as a first-party, single-page web application. The Calculator page is publicly reachable with no identity requirement: a visitor lands on the page and immediately has the full calculator. There is no anonymous pre-identity lifecycle, because no protected state, durable relationship, or commitment exists that would require identity continuity. Nothing is saved between visits, so there is no returning-user verification and no account management.
The page owns the entire accepted lifecycle: entry of operands, selection of an operator, evaluation, display of the result, and recovery from invalid input. The backend and database are provisioned infrastructure that support the application process; they do not introduce additional user-facing destinations or product capabilities in the current scope.
Future work is explicitly out of the current boundary and is listed in Section 11 only as a labeled future horizon; it is not part of current pages or acceptance.
The single page of the product. It is the anonymous public entry and the complete working surface.
Information and state
Primary actions
Supporting actions
Domain entities
Component responsibilities
States
0.0 on the display with no pending operator.0 state; Backspace corrects a mistyped entry without a full reset.FR-1 — Open the calculator As a Calculator user, I should open the single Calculator page and immediately see a working calculator, so that I can start arithmetic without setup.
0 and the full keypad visible.FR-2 — Enter digits As a Calculator user, I should press digit keys to build a number on the display, so that I can enter an operand.
0 is replaced by the first non-zero digit.0.FR-3 — Enter a decimal point As a Calculator user, I should press the decimal point key to enter a fractional number, so that I can calculate with decimals.
FR-4 — Select an operator As a Calculator user, I should press an operator key (+, −, ×, ÷) to choose the operation, so that the calculator knows what to do with the next operand.
FR-5 — Evaluate an expression As a Calculator user, I should press the equals key to compute the result, so that I can see the answer.
FR-6 — Handle invalid operations As a Calculator user, I should see a clear message when an operation is invalid, so that I understand why no result appeared and can recover.
FR-7 — Clear the calculator As a Calculator user, I should press the clear key to reset the calculator, so that I can start a new calculation.
0, the pending operator is cleared, the stored operand is discarded, and any error state is removed.FR-8 — Correct a mistyped entry As a Calculator user, I should press the backspace key to remove the last character, so that I can fix a mistake without clearing everything.
0.Product context. An everyday person who needs to do a quick calculation in a browser — a total, a split, a percentage-free sum — and wants the answer immediately without signing in, installing anything, or navigating a menu.
Primary goal. Enter a number, choose an operation, enter another number, and read the result in as few taps as possible.
Distinct accepted responsibilities.
Relevant inputs and decisions. Which operator to use; whether the displayed value is the entry or the result; whether to chain or reset after a result; how to recover from an error message.
Interactions with other accepted participants. The Calculator user is the only active human persona. The application (frontend and backend) renders the page and executes arithmetic; the user interacts with it directly and receives the result on the display.
Observable success. The correct arithmetic result appears on the display panel, legibly, at the user's viewport width, and the user can immediately start another calculation.
0 and the full keypad visible. No sign-in is required.0.Failure/recovery. If the user mistypes a digit, they press backspace to remove it and continue. If they want to abandon the calculation, they press Clear and the page returns to the initial 0 state.
0 as the second operand.0.The creative direction is authoritative for this section. Muse: Jessica Walsh. Headline idea: a one-screen calculator that feels like a small brand — saturated colour, chunky type, confident and light.
Mode: light mode only.
Colour tokens (exact hex by role)
| Role | Hex | Use |
|---|---|---|
| Background | #FF4FA3 | Full-bleed hot pink page ground |
| Surface | #FFF4E4 | Cream display panel and digit keys |
| Text | #141414 | Black digits, labels, key text |
| Primary | #141414 | Black key text and hard offset shadows |
| Accent | #C6F24E | Lime active-operator key and equals key |
| Muted | #FFD3E7 | Soft pink secondary surfaces and chips |
Typography
clamp(56px, 12vw, 128px).Shape language
Layout
Imagery style
Accessibility and fit
prefers-reduced-motion, the page presents a usable static arrangement with all keys and the display fully visible.Avoid
The first screen is the calculator. A full-bleed hot pink (#FF4FA3) ground fills the viewport. Centered in the top half sits a cream (#FFF4E4) display panel carrying a 128px Archivo Black black (#141414) result number with tabular figures. A rotated "SKY-START" sticker badge anchors the top corner, and a small glossy blob sits beside the display as decoration.
The lower half is a 4-column keypad of 72px cream keys with black digits, each carrying a hard 6px black offset shadow. The lime (#C6F24E) equals key is the only bright control at rest; when an operator is selected, that operator key flips to lime, so the page's colour tells the user exactly which operation is pending.
The signature move is the contrast between the saturated pink field and the cream panel: the display reads like a printed label on a bold poster, and the keypad reads like physical chunky keys. Nothing else competes for attention.
Interaction Model: Animated Motion Tempo: expressive Hero Dimensionality: layered_2d
Landing Hero Motion Brief
0 at 128px Archivo Black, rotated "SKY-START" sticker badge at the top corner, glossy blob beside the display, 4-column keypad below with the lime equals key as the only bright control.prefers-reduced-motion, key presses and result updates occur without the press-down, colour-swap, or spring animation; the page presents a static, fully usable arrangement with all keys and the display visible.prefers-reduced-motion, the page provides a usable static arrangement. (Provenance: explicit — creative direction.)0 state without a blocking loading state. (Provenance: required_inference for a usable calculator entry.)No additional services are required for the current calculator scope.
Assumptions
Constraints
Future horizon (not current scope, not acceptance criteria)
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No user flows yet.
The User Flow Agent will generate per-persona navigation diagrams after SRD updates.
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No user flows yet.
The User Flow Agent will generate per-persona navigation diagrams after SRD updates.
No comments yet. Be the first!