moon-pc is an AI-powered PC Component Compatibility Assistant delivered as a modern, responsive React frontend. Its product intent is to let a person assemble a PC part list — CPU, Cooler, Motherboard, Memory, and Case — and immediately see whether the chosen parts work together, while a dedicated AI Hardware Assistant answers hardware fit and socket questions and two build galleries provide starting points and community inspiration.
The audience is PC builders and PC-building enthusiasts: people who choose their own parts, care about socket numbers, cooler mounting brackets, radiator clearance, and estimated price, and who want a single instrument-like surface that tells them "Compatibility: No issues found" before they buy. A second audience is the browsing visitor looking for a suggested configuration or a finished rig to copy, and a third is the builder who wants their own finished rig shown in the community gallery.
The product is a frontend experience with a global theme toggle. The default theme is dark — black ground with vibrant yellow accents for primary buttons, borders, and active states. The header toggle switch shifts the interface to a light theme — a clean white background with purplish accents, structured with Times New Roman typography at 16-point bold headings and 12-point body text.
moon-pc is a single responsive React application with a persistent header that carries the global theme toggle. The application presents five surfaces: a landing Hero Section, a Main Builder Interface, a dedicated AI Hardware Assistant chat panel, a Suggested Builds grid, and a Completed Builds gallery.
The Hero Section is the public entry: a bold hero with high-quality floating images of PC components (motherboard, GPU, case fan) orbiting a central text area, a centered main heading, a primary yellow Start Building call-to-action button, and quick-start configuration cards positioned directly below.
The Main Builder Interface is a minimalist builder workspace. A prominent full-width status banner sits above the component selection list and reports system health, styled like a bright green "Compatibility: No issues found" bar. Beneath it, a structured component selection list uses clean horizontal rows for CPU, Cooler, Motherboard, Memory, and Case, each with a simple action button labeled + Choose A [Component] — yellow in dark mode, purplish in light mode.
The AI Hardware Assistant is a dedicated chat panel integrated beside the component list. It is pre-populated with a sample user query asking whether a specific CPU cooler mounting bracket fits a Thermaltake Level 20MT case, followed by a simulated AI response confirming physical clearance and socket compatibility.
The Suggested Builds section is a grid of structurally clean cards; each card displays a thumbnail image of a PC case, smaller nested component icons, a brief title, an estimated price, and a comment counter. The Completed Builds section is a secondary grid showcasing larger user-submitted photos of custom PC rigs, component lists, and upvote counters.
All card backgrounds and text colors invert seamlessly when switching between the black/yellow and white/purplish themes.
moon-pc is delivered as a first-party React frontend owned by the application. Every surface in this document — the hero entry, the builder workspace, the AI Hardware Assistant panel, the Suggested Builds grid, and the Completed Builds gallery — is application-owned custom UI. There is no source-backed provider-owned or external-only surface, and no headless delivery is requested.
The theme system is global and application-owned: one header toggle switch governs the whole interface, dark is the default, and the light theme is a full inversion of surfaces, text, and accents rather than a partial restyle. The compatibility status banner, the component selection rows, the AI Hardware Assistant transcript, and both build card grids all participate in that inversion.
The AI Hardware Assistant is presented as a chat panel with a pre-populated sample exchange and a simulated AI response. The current scope is the assistant experience as specified: the panel, its placement beside the component list, and the pre-populated query and answer about the Thermaltake Level 20MT mounting bracket. No additional assistant capability beyond what is stated is part of this document.
The build galleries are browse surfaces in the current scope: Suggested Builds presents cards with case thumbnail, nested component icons, title, estimated price, and comment counter; Completed Builds presents larger user-submitted rig photos, component lists, and upvote counters. The current scope covers the presentation of these galleries and their contents as specified.
The design reference supplied by the user — the Replit mockup URL — could not be loaded, so no structural, feature, or visual facts were verified from it. It remains a supplemental design reference only; it does not add, remove, or alter any requirement in this document. The light-theme screenshots and the design walkthrough video were not yet provided at the time of this document and likewise contribute no verified facts.
The authoritative source content for this document is the set of Replit AI prompts supplied by the user, which define the product's required content. The verified content items are:
FR-1 — Responsive React frontend for the AI-powered PC Component Compatibility Assistant (explicit) As a PC Builder, I should use a modern, responsive React frontend for the AI-powered PC Component Compatibility Assistant, so that I can work with the assistant on desktop and smaller viewports without losing any content or control.
FR-2 — Global theme toggle with dark default (explicit) As a PC Builder, I should toggle the global theme from the header, so that I can switch the whole interface between the dark and light presentations.
FR-3 — Dark theme: black background with vibrant yellow accents (explicit) As a PC Builder, I should see the dark theme as a black background with vibrant yellow accents on primary buttons, borders, and active states, so that the default presentation matches the requested look.
FR-4 — Light theme: white background, purplish accents, Times New Roman typography (explicit) As a PC Builder, I should see the light theme as a clean white background with purplish accents and Times New Roman typography at 16-point bold headings and 12-point body text, so that the light presentation matches the requested look.
FR-5 — Hero section with orbiting component imagery and centered heading (explicit) As a Build Browser, I should see a bold hero section on the landing page with high-quality floating images of PC components — motherboard, GPU, and case fan — orbiting a central text area, with a centered main heading, so that the product's purpose is immediately clear.
FR-6 — Primary yellow Start Building call-to-action (explicit) As a Build Browser, I should use a primary yellow Start Building call-to-action button centered in the hero, so that I can begin building from the landing page.
FR-7 — Quick-start configuration cards below the hero (explicit) As a Build Browser, I should see quick-start configuration cards positioned directly below the hero, so that I can pick a starting configuration instead of beginning from nothing.
FR-8 — Minimalist builder layout with structured component selection rows (explicit) As a PC Builder, I should use a minimalist builder layout with a structured component selection list of clean horizontal rows for CPU, Cooler, Motherboard, Memory, and Case, so that I can see and fill each part of my build in order.
FR-9 — Per-row + Choose A [Component] action buttons with theme-dependent color (explicit) As a PC Builder, I should use a simple action button labeled + Choose A [Component] on each component row — yellow in dark mode and purplish in light mode — so that I can choose the part for that row.
FR-10 — Full-width compatibility status banner above the component list (explicit) As a PC Builder, I should see a prominent, full-width status banner above the component selection list indicating system health, styled like a bright green Compatibility: No issues found bar, so that I can tell at a glance whether my selection is sound.
FR-11 — AI Hardware Assistant chat panel beside the component list (explicit) As a PC Builder, I should use a dedicated AI Hardware Assistant chat panel integrated beside the component list, so that I can consult hardware fit and socket questions while I build.
FR-12 — Pre-populated sample query about the Thermaltake Level 20MT mounting bracket (explicit) As a PC Builder, I should see the AI Hardware Assistant pre-populated with a sample user query asking whether a specific CPU cooler mounting bracket fits a Thermaltake Level 20MT case, so that I can see the kind of question the assistant handles.
FR-13 — Simulated AI response confirming physical clearance and socket compatibility (explicit) As a PC Builder, I should see a simulated AI response following the sample query that confirms physical clearance and socket compatibility, so that I can see the assistant's answer to the mounting-bracket question.
FR-14 — Suggested Builds grid with case thumbnail, nested component icons, title, estimated price, and comment counter (explicit) As a Build Browser, I should browse a Suggested Builds section using a grid of structurally clean cards, each displaying a thumbnail image of a PC case, smaller nested component icons, a brief title, an estimated price, and a comment counter, so that I can find a starting point.
FR-15 — Completed Builds grid with user-submitted rig photos, component lists, and upvote counters (explicit) As a Build Browser, I should browse a secondary Completed Builds grid showcasing larger user-submitted photos of custom PC rigs, component lists, and upvote counters, so that I can draw inspiration from finished rigs.
FR-16 — Seamless theme inversion of card backgrounds and text colors (explicit) As a PC Builder, I should see all card backgrounds and text colors invert seamlessly when switching between the black/yellow and white/purplish themes, so that the galleries and cards stay consistent with the active theme.
FR-17 — Build Sharer contribution to the Completed Builds gallery (required_inference) As a Build Sharer, I should contribute my own finished rig to the Completed Builds gallery with photos and a component list, so that my build appears alongside other builds with an upvote counter and a comment counter.
The PC Builder is the core user of moon-pc. Their product context is the builder workspace: a minimalist layout where the parts of a machine are laid out as clean horizontal rows — CPU, Cooler, Motherboard, Memory, and Case — and where the state of the whole selection is summarized by a single full-width status banner above those rows.
Their primary goal is a component selection with no compatibility issues found. They work row by row, using the + Choose A [Component] button on each row to choose a part, and they read the bright green Compatibility: No issues found banner to know whether the selection is sound. Their distinct accepted responsibility is the assembly of the part list itself: choosing the CPU, the cooler, the motherboard, the memory, and the case, and watching the system-health banner as those choices accumulate.
Their relevant inputs and decisions are the component category they are filling, the part they choose for it, and the reading they take from the status banner. They also consult the AI Hardware Assistant panel beside the component list, where the pre-populated exchange about whether a specific CPU cooler mounting bracket fits a Thermaltake Level 20MT case — answered with a simulated AI response confirming physical clearance and socket compatibility — shows them the kind of fit and socket question the assistant addresses.
Their interaction with other accepted participants is indirect: the configurations they and other builders assemble are the material that the build galleries present, and the finished rigs shown in Completed Builds are the work of Build Sharers. Their observable success is a filled component selection with the status banner reading Compatibility: No issues found.
The Build Browser is the visitor who arrives without a part list and is looking for a starting point or inspiration. Their product context is the landing hero and the two build galleries: the hero with its floating motherboard, GPU, and case fan imagery orbiting a central text area, its centered heading, its primary yellow Start Building button, and the quick-start configuration cards directly below; the Suggested Builds grid of structurally clean cards; and the Completed Builds gallery of larger user-submitted rig photos.
Their primary goal is picking a build or configuration to start from. Their distinct accepted responsibility is exploration and selection: reading the quick-start configuration cards below the hero, scanning Suggested Builds cards for a case thumbnail, nested component icons, a brief title, an estimated price, and a comment counter, and browsing Completed Builds for larger user-submitted rig photos with their component lists and upvote counters.
Their relevant inputs and decisions are which configuration or build to start from, and what the card contents — price, component icons, comment counter, upvote counter — tell them about it. Their interaction with other accepted participants is that they consume the work of Build Sharers in the Completed Builds gallery and the configurations surfaced in Suggested Builds, and they may hand off into the builder that the PC Builder uses. Their observable success is choosing a build or configuration to start from.
The Build Sharer is the user who contributes their own finished rig to the community gallery. Their product context is the Completed Builds section, where builds are showcased as larger user-submitted photos of custom PC rigs, each accompanied by a component list and an upvote counter, and surfaced with a comment counter alongside other builds.
Their primary goal is having their build appear in the gallery and receive community engagement. Their distinct accepted responsibility is contribution: submitting their finished rig with photos and a component list so that it is presented in the same form as the other entries — a larger rig photo, a component list, and an upvote counter.
Their relevant inputs and decisions are the photos of their finished rig and the component list that describes it. Their interaction with other accepted participants is that their submission becomes material for Build Browsers, who browse the gallery and engage with the entry through its upvote counter and comment counter. Their observable success is their build appearing in the gallery and receiving community engagement.
The visual direction is Precision instrument after MARQ — dark titanium ground, amber signal, condensed gauge type. The muse is MARQ by Garmin: a luxury instrument aesthetic. PC building is a spec-obsessive hobby for enthusiasts who read datasheets for fun — socket numbers, TDP, radiator clearance in millimetres. The emotional register is not "friendly SaaS"; it is the satisfaction of a rig that posts first try, plus the anxiety of a part that doesn't fit. This product is a measurement instrument, so it looks like one: dark, exact, and legible at a glance. The audience is 16–40, mostly male-skewed, desktop-first, deeply allergic to generic startup UI and to anything that looks like a template dashboard.
MARQ's language — dark titanium surfaces, ruled data rows, macro material detail, a single instrument accent, needle-sweep motion — is exactly the vocabulary of a compatibility checker. "Compatibility: No issues found" is a gauge reading, not a toast. The + Choose A Component rows are dial rows. The AI assistant is a technician's log. This muse also carries the user's explicit palette honestly: yellow becomes instrument amber on graphite rather than a bootstrap CTA, and the light theme becomes a clean white instrument face with a purplish accent, per the authoritative request.
| Role | Value |
|---|---|
| Background | #0B0B0C |
| Surface | #16171A |
| Hairline / border | #2A2C31 |
| Text | #EDEDEF |
| Muted (spec labels and metadata only, never body copy) | #8A8D93 |
| Primary | #FFD400 |
| Accent | #FFD400 |
| Status bar fill | #12D66B |
| Status bar text | #04120A |
Dark theme is the default and the primary art direction: near-black #0B0B0C ground, graphite #16171A panels with 1px #2A2C31 hairlines. Vibrant yellow #FFD400 is the only signal colour — used for primary buttons, active row borders, focus rings, gauge needles and the count-up numerals, never as a large fill except the thin hazard rule and the status bar's left cap. Body text #EDEDEF on #0B0B0C (contrast ~17:1). Muted #8A8D93 for spec labels and metadata only, never for body copy.
| Role | Value |
|---|---|
| Background | #FFFFFF |
| Surface | #F4F4F6 |
| Hairline / border | #E3E3E8 |
| Text | #14151A |
| Muted | #6B6E76 |
| Primary | #7A3FF2 |
| Accent | #7A3FF2 |
| Status bar fill | #0FA85A |
| Status bar text | #FFFFFF |
Light theme: clean white background with purplish accents. Purple #7A3FF2 is used identically to the dark theme's amber — buttons, active borders, gauge needles.
Status bar green stays constant in both modes: #12D66B fill with #04120A text in dark, and #0FA85A fill with #FFFFFF text in light — always paired with the literal label Compatibility: No issues found so colour is never the only signal.
Instrument geometry: 2px radii on buttons and inputs (nothing pill-shaped), 4px on cards, 1px hairline rules that run the full column width like a machined seam. Circular gauge bezels (concentric 1px rings with a 2px amber arc) for the compatibility score, socket-fit and clearance meters. Ruled data rows with right-aligned values, like a watch spec sheet. Edge-to-edge component photography cropped square with a hard 1px border, never a soft drop shadow.
A 12-column grid with a hard 1px vertical rule down the page at the 8-column mark, so the builder reads as two instruments side by side. The hero is asymmetric: text block flush-left in columns 1–6, the floating component cluster occupying columns 7–12 and bleeding off the right edge. The builder puts the full-width compatibility banner directly beneath the header, then a 7-column component selection list (CPU, Cooler, Motherboard, Memory, Case as ruled rows) with the 5-column AI Hardware Assistant panel pinned to the right and sticky on desktop; at 768px and below the assistant drops below the list, and at 375px every row stacks label-over-value with the + Choose button full width. Suggested Builds is a 3/2/1 column grid of ruled cards; Completed Builds is a 2-column gallery at desktop with a component list rendered as a monospaced spec block beneath each rig photo.
Macro, studio-lit hardware photography on the graphite ground: a CPU socket with visible pins, a radiator fin stack in raking light, a case fan's blade edge, an M.2 stick's gold contacts, a GPU backplate's brushed aluminium. No stock people, no clip art, no gradient blobs. Completed Builds use real user rig photos treated with a slight desaturation and a 1px hairline frame so they sit inside the instrument world rather than fighting it. Data graphics — clearance diagrams, socket pin maps, airflow arrows — are drawn as thin amber line art on graphite.
The compatibility gauge as the hero's second subject.
The public entry is a full-viewport dark graphite field (#0B0B0C) with a faint 1px grid. The headline BUILD IT RIGHT THE FIRST TIME sits flush-left in Saira Condensed 600 uppercase, 48px at 375px growing to 96px at 1280px, set in three stacked lines that span the left six columns and are underlined by a single 2px amber rule that runs to the viewport edge. To its right, a 3D-ish cluster of floating hardware cut-outs — motherboard, GPU, case fan — arranged on an orbit path around an empty centre, each with a 1px hairline edge and a small amber corner tick, allowed to bleed off the right edge at desktop and to recede behind the headline at 375px.
Under the headline, flush-left, a solid amber #FFD400 Start Building button (2px radius, black 700 label) sits beside a live compatibility gauge: a 96px circular bezel with the needle sweeping and 0 ISSUES counting up. Directly below the fold line, three quick-start configuration cards in a ruled row, each a graphite panel with a 1px border, a component count in tabular numerals, and an estimated price. Nothing is centred; nothing floats on a gradient.
The gauge is the signature: a 96px circular bezel with concentric 1px rings, an amber needle that sweeps 0→100 on load, and tabular 0 ISSUES counting up beside it — the same gauge component reappears at 48px inside each Suggested Build card. This is the same instrument reading that the builder's full-width status banner delivers as Compatibility: No issues found: the hero shows the instrument at rest, the builder shows it live.
Supporting signature moves, all recompositions of accepted content:
#12D66B bar with black uppercase COMPATIBILITY: NO ISSUES FOUND, a left amber cap, and a right-side segment count 5/5 PARTS CHECKED in tabular numerals — it wipes in from the left rather than fading.Interaction Model: Animated Motion Tempo: restrained Hero Dimensionality: layered_2d
NFR-1 — Responsive across viewports (explicit) The frontend must be responsive. The layout adapts across viewport sizes: at 768px and below the AI Hardware Assistant panel drops below the component selection list, and at 375px every component row stacks label-over-value with the + Choose button full width. Rationale: the source explicitly requires a modern, responsive React frontend.
NFR-2 — React frontend (explicit) The frontend must be built with React. Rationale: the source explicitly specifies a React frontend.
NFR-3 — Default theme is dark (explicit) The default theme on load must be dark: black background with vibrant yellow accents for primary buttons, borders, and active states. Rationale: explicit hard constraint in the authoritative user evidence.
NFR-4 — Light theme specification (explicit) The light theme must use a clean white background with purplish accents and Times New Roman typography featuring 16-point bold headings and 12-point body text. Rationale: explicit hard constraint in the authoritative user evidence.
NFR-5 — Theme-dependent builder button color (explicit) Builder action buttons must be yellow in dark mode and purplish in light mode. Rationale: explicit hard constraint in the authoritative user evidence.
NFR-6 — Status banner styling (explicit) The compatibility status banner must be styled as a bright green bar. Rationale: explicit hard constraint in the authoritative user evidence.
NFR-7 — Pre-populated assistant chat (explicit) The AI Hardware Assistant chat must be pre-populated with a sample user query and a simulated AI response. Rationale: explicit hard constraint in the authoritative user evidence.
NFR-8 — Seamless theme inversion (explicit) All card backgrounds and text colors must invert seamlessly when switching between the black/yellow and white/purplish themes, without breaking layout or legibility. Rationale: explicit requirement in the authoritative user evidence.
NFR-9 — Readable text and controls stay whole at every viewport (required_inference)
Headlines, wordmarks, labels, numbers, and cards' 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, and no other element may cover any part of them. Imagery, decoration, and motion may be cropped, bled off an edge, rotated, overlapped, or cut as the direction asks, as long as they cover no readable text or control. Rationale: indispensable for the responsive requirement to be usable at the stated viewports.
NFR-10 — Reduced-motion support (required_inference)
With prefers-reduced-motion, the interface must provide a usable static arrangement: the gauge needle and counter snap to their final value, the status banner fill appears instantly, and all reveals become opacity-only. Rationale: indispensable for the restrained motion direction to remain usable for users who request reduced motion.
Assumptions
Constraints
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No comments yet. Be the first!