StealThis .dev
Pages Medium

DIY — Repair Q&A Thread

A complete community repair troubleshooting thread built as one self-contained page: a question card with device chip, reputation badges, an SVG discharge chart and a working vote control, then four ranked answers where the top one carries a green chosen-solution banner. Sort tabs reorder the list with a FLIP animation, comment sub-threads collapse under each answer, and the composer wraps your selection with a real formatting toolbar before optimistically prepending the posted answer.

Open in Lab
html css vanilla-js
Targets: JS HTML

Code

Repair Q&A Thread

A single troubleshooting thread for the fictional FIXWELL Answers community. The question card leads with a device chip, tag chips and a “Solved” pill, then the asker’s reputation badge, view count, and a full write-up of the fault — including an inline SVG chart that plots reported state of charge against sagging pack voltage up to the hard cutoff. The vote control on the left is real: up and down toggle, the count animates, and aria-pressed tracks state.

Four answers follow, ranked by score. The accepted one sits at the top behind a green solution banner and a check mark in the vote rail; the rest carry gold, silver and bronze badge tiers, mono command blocks with plausible tool output, and helpful / not-helpful counters that behave like a single-choice group. Each answer hides a comment sub-thread behind a caret toggle wired with aria-expanded and the hidden attribute.

Sort tabs (Most helpful / Newest / Oldest) reorder the list from data-score and data-time and animate the reflow. The composer at the bottom has a live character counter that warns near the limit, a formatting toolbar whose bold / code / list buttons actually wrap the current textarea selection via setRangeText, and a post button that renders the markdown-ish body and prepends the new answer optimistically. The sidebar holds the device hub card, related questions with solved markers, and a parts rail.

How this look is built

The information architecture takes its cue from iFixit Answers-style repair threads, but every technique here is modern CSS. The page is a two-column grid with a position: sticky sidebar instead of the old float-plus-clearfix rail, each card is its own nested grid so the vote rail and body align without absolute positioning, and the answer reflow uses a FLIP pass — measure with getBoundingClientRect(), reappend the nodes, invert with a transform, then release it inside requestAnimationFrame — which animates on the compositor rather than thrashing layout the way animated top offsets used to. All artwork (the discharge chart, the laptop, the part thumbnails, the logo mark) is inline SVG, so there are zero network image requests and everything inherits the palette, and prefers-reduced-motion neutralises the animations in one rule.

Illustrative UI only — always follow real safety guidance when working with tools, electronics, or repairs.