Product intent. trigonometry-calculator is a web-based trigonometry calculator for students practicing trigonometry and for general users who need quick, trustworthy trigonometric results. It computes the basic trigonometric functions — sine, cosine, and tangent — together with their inverses, supports both degree and radian angle modes, and provides a dedicated workspace for solving triangles from given sides or angles using the law of sines and the law of cosines.
Audience. The product serves a single active human role: the Trigonometry Calculator User — a student practicing trigonometry or a general user performing trigonometric computations. The tool must feel authoritative and trustworthy while remaining alive and memorable: clarity and pattern recognition matter more than decoration, and mathematics should read as a visual language rather than a chore.
The product is delivered as a first-party web application with custom UI. It is anonymous and ephemeral: no account, sign-in, or stored history is required or implied by the accepted requirements. All three surfaces are openly reachable.
trigonometry-calculator is a small, focused web application with three first-party pages:
Actors. One accepted human persona, the Trigonometry Calculator User, performs all accepted work. There are no other human participants, no counterparties, and no outbound recipients whose state changes as a result of a computation. The application itself is a non-persona system actor that performs the numeric evaluation and returns results.
Accepted behavior. The user enters an angle or ratio, selects degrees or radians, and reads the resulting sine, cosine, tangent, or inverse value. Separately, the user enters known sides and/or angles of a triangle and reads the solved remaining sides and angles produced through the law of sines and the law of cosines.
Ownership. All three pages are application-owned custom pages with no access requirement. Computation is performed by the application's own backend; there is no third-party calculation provider, no external destination, and no provider-owned surface in the accepted scope.
Narrow exclusions. No account creation, sign-in, saved history, sharing, export, graphing, unit conversion beyond degrees/radians, or any capability not listed in the accepted requirements is part of this product. The design system skill supplied in planning scope describes an unrelated micro-grid dashboard and is not a source of product facts, copy, or capabilities for this project; only the project-wide creative direction governs presentation.
Delivery. The product is a first-party web application rendered in the browser, with a backend that performs the trigonometric and triangle-solving computations. The frontend is the only surface the user interacts with; the backend is invoked by the frontend and returns numeric results. No mobile-native client, no CLI, and no third-party integration is accepted.
Access ownership. All three pages are anonymous and openly reachable. The accepted requirements describe a practice and general-use tool with no durable per-user state, no commitments, entitlements, or value transfers bound to an individual, and no need to resume work across sessions. Application-owned identity is therefore neither explicitly required nor indispensable, and no identity establishment, verification, or account-management capability is included. The degree/radian mode selection and the current input values are transient page state only.
Current vs. future. Everything in this document is current. No future-horizon requirements were accepted; nothing is deferred, and no placeholder or "coming soon" surface exists.
Not applicable. No reference directive in the supplied material declares content_source authority, so no source content inventory is produced.
OPEN CALCULATOR in white uppercase, navigating to the Calculator page.TRIGONOMETRY set in Anton at clamp(48px, 12vw, 160px), stacked in three lines, flush-left, black on warm paper; a solid red rectangle overlapping the bottom-right of the wordmark containing a white triangle diagram with labelled sides a, b, c and angles A, B, C in Space Grotesk.OPEN CALCULATOR, hard edges, no radius, no shadow.clamp(32px, 6vw, 64px) on a white card with a 2px black border and no shadow.Each requirement is stated as a story point with provenance, lifecycle facts, and observable acceptance.
FR-1 — Compute sine, cosine, and tangent. As a Trigonometry Calculator User, I should compute the sine, cosine, and tangent of an entered angle so that I can get the basic trigonometric value I need.
explicit.clamp(32px, 6vw, 64px) on a white card with a 2px black border, with a 200ms count-up.FR-2 — Compute inverse sine, cosine, and tangent. As a Trigonometry Calculator User, I should compute the inverse sine, cosine, and tangent of an entered ratio so that I can recover the angle from a ratio.
explicit.clamp(32px, 6vw, 64px) on a white card with a 2px black border, with a 200ms count-up.FR-3 — Select degrees or radians. As a Trigonometry Calculator User, I should choose whether my angle input and result are interpreted in degrees or radians so that my results match the convention I am working in.
explicit.FR-4 — Solve a triangle using the law of sines. As a Trigonometry Calculator User, I should solve a triangle from a known side and its opposite angle together with one further known value, using the law of sines, so that I can obtain the remaining sides and angles.
explicit.FR-5 — Solve a triangle using the law of cosines. As a Trigonometry Calculator User, I should solve a triangle from two sides and the included angle, or from all three sides, using the law of cosines, so that I can obtain the remaining sides and angles.
explicit.FR-6 — Solve a triangle from given sides or angles. As a Trigonometry Calculator User, I should enter whichever sides and angles I know and receive the complete solved triangle so that I do not have to choose the law myself.
explicit.FR-7 — Reach the calculator from the public entry. As a Trigonometry Calculator User, I should understand what the tool does and open the calculator from the entry page so that I can begin computing without prior knowledge of the tool.
required_inference.TRIGONOMETRY in Anton at clamp(48px, 12vw, 160px) stacked in three lines, a red rectangle containing a white labelled triangle diagram, the body line "Solve triangles. Compute sin, cos, tan. Degrees or radians.", and a red rectangular OPEN CALCULATOR button; activating the button navigates to the Calculator page.FR-8 — Clear inputs and results. As a Trigonometry Calculator User, I should clear the current input and result so that I can start a fresh computation without stale values.
required_inference.Product context. A student practicing trigonometry or a general user who needs a trigonometric value or a solved triangle quickly. They arrive at the tool with a specific problem in hand — an angle whose sine they need, a ratio whose angle they need, or a triangle with some sides and angles known and others missing. They are working in a convention (degrees or radians) that they must be able to set explicitly, because a result in the wrong convention is worse than no result.
Primary goal. Obtain correct, trustworthy trigonometric values and solved triangles for practice or general use, without friction and without ambiguity about the convention in use.
Distinct accepted responsibilities.
Relevant inputs and decisions. The numeric angle or ratio; the function to apply; the angle mode; the set of known sides and angles for a triangle; whether the entered triangle data is sufficient or needs correction after an error message.
Interactions with other accepted participants. None. The persona is the sole human actor; the application performs the computation and returns the result. There is no counterparty, approver, or recipient whose state changes.
Observable success. The result panel or result rail displays the computed value or the complete solved triangle, in the selected angle mode, on a white card with a 2px black border and no shadow, with the result value set in Anton and counted up over 200ms. Known values appear yellow in the triangle diagram and computed values red.
What makes this role's work distinct. The persona's work is a single continuous act of translation between representations: from an angle to a ratio, from a ratio to an angle, or from a partial triangle to a complete one. The tool's value is that this translation is immediate, unambiguous about convention, and visually legible — the diagram and the oversized numerals are the result, not decoration around it.
TRIGONOMETRY in Anton, the red rectangle with the labelled triangle, and the line "Solve triangles. Compute sin, cos, tan. Degrees or radians."OPEN CALCULATOR button and arrives at the Calculator page.clamp(32px, 6vw, 64px) on a white card with a 2px black border, counting up over 200ms.clamp(32px, 6vw, 64px) on a white card with a 2px black border, counting up over 200ms.The creative direction is authoritative for this section. The muse is Paula Scher, and the headline idea is "Typography as instrument: trigonometry you can see at a glance." Information becomes architecture through typography, flat colour blocks, and poster-scale contrast; trigonometry's relationships — angles, ratios, waves, triangles — are made visible through oversized type, flat colour fields, and diagrammatic composition.
Light mode (the only mode specified by the direction):
| Role | Hex | Usage |
|---|---|---|
| Background | #F7F5F0 | Warm paper off-white ground |
| Surface | #FFFFFF | Input cards and result panels — crisp paper on the warm ground |
| Text | #111111 | Pure black type |
| Primary | #E4002B | Hot poster red — active states, results, key labels, CTA fill |
| Accent | #F5C400 | Saturated yellow — highlights, mode toggles, known-value diagram fills |
| Muted | #6B6B6B | Secondary text |
Contrast: black-on-warm-white at 14:1 and red-on-white at 5.9:1, both readable at body size. Colour fields are used as flat blocks, never gradients. No blue anywhere in the palette — no #0057FF, #2563EB, #4F46E5, or similar.
clamp(40px, 8vw, 112px); calculator numerals use clamp(32px, 6vw, 64px) in Anton for result values.Hard edges and flat colour blocks. No border-radius on primary panels; inputs and result cards are sharp rectangles with 2px black borders or solid colour fills. Buttons are rectangular with uppercase labels. Diagram lines are 2–3px solid black or red. Triangle diagrams use flat fills — yellow for known values, red for computed values, black for labels. No soft shadows, no blobs, no rounded pills.
A strict asymmetric poster grid: a 12-column base with a dominant 7-column content field and a 5-column result/diagram rail on desktop. The Calculator page stacks input fields in a single column on mobile, then splits into a two-column layout at 768px with results pinned to the right rail. Section breaks are full-width colour bands — a red band for the mode toggle, a yellow band for the Triangle Solver's known-values panel. Horizontal rules are 2px black and used as section dividers. Navigation is a top bar with black type on warm paper, no logo mark, just a wordmark in Anton.
Typography and diagram are the imagery. The hero uses a full-bleed composition of oversized trig notation — sin, cos, tan, θ — set in Anton and arranged as a poster. The Triangle Solver uses flat vector diagrams with colour-coded sides and angles, drawn in black with red and yellow fills. No photography, no 3D renders, no illustration for its own sake. Every visual element is either a number, a symbol, or a diagram that carries information.
The poster hero as the product's front door.
The Landing page is a full-viewport poster. On the left 7 columns, the word TRIGONOMETRY is set in Anton at clamp(48px, 12vw, 160px), stacked in three lines, flush-left, black on warm paper. Overlapping the bottom-right of the wordmark is a solid red rectangle, 40% of the viewport width, containing a white triangle diagram with labelled sides a, b, c and angles A, B, C in Space Grotesk. Below the headline, a single line of body copy in Space Grotesk 18px reads "Solve triangles. Compute sin, cos, tan. Degrees or radians." A red rectangular CTA button reads OPEN CALCULATOR in white uppercase.
The composition is asymmetric, type-dominant, and could not be mistaken for a centred SaaS hero. It recomposes only accepted content — the product's name, its two accepted capabilities, its two accepted angle modes, and the triangle diagram that the Triangle Solver page uses — into a single poster-scale statement. It introduces no new behaviour, page, or destination.
Signature moves carried through the product:
clamp(48px, 12vw, 160px), stacked in three lines and overlapping a solid red colour block.clamp(32px, 6vw, 64px) with a 200ms count-up animation, set on white cards with 2px black borders and no shadow.Interaction Model: Static Motion Tempo: restrained Hero Dimensionality: flat
TRIGONOMETRY stacked in three lines, overlapping the solid red rectangle that contains the white labelled triangle diagram.OPEN CALCULATOR button sit below the headline, left-aligned. The top navigation bar carries the wordmark and links in black type on warm paper.prefers-reduced-motion, all reveals, count-ups, colour flips, and wipes resolve instantly to their final state. The poster composition is unchanged and fully legible; the CTA remains reachable and the diagram remains fully drawn with its yellow and red fills in place.No user-requested 3D or WebGL hero was made, and the direction's hero dimensionality is flat, so no 3D scene brief is included.
NFR-1 — Numerical correctness. Trigonometric and triangle-solving results must be numerically correct for the selected angle mode. Provenance: explicit — the accepted requirements state that the tool is for students practicing and for general use, and that success means getting correct, trustworthy results. Rationale: a trigonometry tool that returns wrong values is worse than no tool.
NFR-2 — Angle-mode consistency. The selected angle mode must govern both the interpretation of angle input and the presentation of angle results, on both the Calculator and Triangle Solver pages. Provenance: explicit — the accepted requirements state support for both degrees and radians angle modes. Rationale: a result in the wrong convention is a wrong answer.
NFR-3 — Error clarity. Every failure state must present a plain-language message that names the specific problem and leaves the offending input editable. Provenance: required_inference — indispensable for the accepted outcome of trustworthy results, since a silent or opaque failure would leave the user unable to distinguish a wrong answer from a rejected input.
NFR-4 — Readable text and controls at every viewport. Headlines, wordmarks, labels, numbers, and card text and controls must stay entirely inside the viewport and their container at 375px, 768px, and 1280px, wrapping or scaling (for example font-size: clamp(...) with its mobile size) to fit, with no other element covering any part of them. Provenance: explicit — stated in the creative direction's readability rule. Rationale: the poster-scale typography must remain legible on a phone as well as a desktop.
NFR-5 — Reduced-motion support. With prefers-reduced-motion, the interface must present a usable static arrangement in which every item is fully readable and every control is reachable. Provenance: explicit — stated in the creative direction's readability rule.
NFR-6 — Responsive layout. The Calculator page stacks input fields in a single column on mobile and splits into a two-column layout at 768px with results pinned to the right rail. The Triangle Solver's known-values panel and result rail stack vertically on mobile. Provenance: explicit — stated in the creative direction's layout section.
NFR-7 — No blue in the palette. No blue or indigo may appear anywhere in the interface. Provenance: explicit — stated in the creative direction's avoid list.
NFR-8 — No photography or 3D renders as hero imagery. Typography and diagrams only. Provenance: explicit — stated in the creative direction's imagery and avoid sections.
No technology choices were specified by the user. The following are coherent defaults for the accepted scope, labelled as such.
[Default — not specified by user][Default — not specified by user][Default — not specified by user][Default — not specified by user][Default — not specified by user]Assumptions.
[Assumption — not specified by user][Assumption — not specified by user][Assumption — not specified by user][Assumption — derived from source boundaries]Constraints.
#F7F5F0, surface #FFFFFF, text #111111, primary #E4002B, accent #F5C400, muted #6B6B6B. No blue or indigo anywhere.
Triangle a b c
Known values yellow · computed red
Solve triangles. Compute sin, cos, tan. Degrees or radians.
Start calculating
Open Calculator
Triangle a b c
Known values yellow · computed red
Solve triangles. Compute sin, cos, tan. Degrees or radians.
Start calculating
Open Calculator
No comments yet. Be the first!