PINE042One careful crossing
Added Jul 19, 2026 UTC
Decode challengePersonal design study · Published
Based on BTD6 Challenge Lens
Exploring skeuomorphic interface design through a passion project based on my favorite game, Bloons TD 6.
01
Primary surface
The design uses familiar physical cues for digital actions: wood frames the work, paper holds content, inset fields accept input, raised controls move when pressed, and enamel markers show status. Every value shown here is synthetic.
02
Visual thesis
The design explores how physical materials can make a digital interface feel more tactile without copying the game’s menus. Each material has a consistent role across the product.
I wanted to explore skeuomorphic design through a passion project based on my favorite game, Bloons TD 6.
TactileRaised, inset, framed, and enamel layers have different behavioral meanings.
LegibleHighlights model light; lower edges and inner shadows clarify control boundaries.
FriendlyRounded type and warm materials invite the first action.
TrustworthyFacts, interpretations, and unknowns keep distinct labels.
FastCSS materials, scoped styling, and lazy heavy work keep the content first.
03
Five decisions
Each decision connects a physical cue to behavior, theme, authorship, or evidence so the skeuomorphic details remain useful.
04
Foundations
The system uses four depth layers. Bevels, inner shadows, and cast shadows show what each object does, while the light and dark themes preserve the same meaning.
04.1 · Material stack
Four layers, four jobs.Original CSS foliage, light, and terrain sit behind the product and never repeat as wallpaper.
One structural rim, one top highlight, one lower edge, and one ambient shadow contain the work.
Raised controls travel about 3 px; recessed fields use an upper inner shadow and lower highlight.
A thin rim and small glint mark status without turning every label into an object.
?04.2 · Semantic color
Roles stay stable; material light changes.Parchment-lit page environment.
#F6EACBJungle field at night.
#14201AMain framed work surface.
#FFF8E8Main framed work surface after dark.
#1F3027Single primary action and tactile signal.
#E89135Playable or positive secondary action.
#237A53Links, source facts, information, and focus.
#2B6FA8High-attention factual marker.
#F4C150Primary copy on light materials.
#25323BPrimary copy on dark materials.
#F9EDCEActual errors or destructive meaning.
#B83D42Visible keyboard focus after dark.
#8CCBFF04.3 · Type and identifiers
Display and body type.Pick a challenge to decode.
Plain-language explanation leads. Exact source evidence stays nearby, readable, and explicit about what the system does not know.
PINE042 · 63 → 630123456789 · Codes use tabular figures and one body family.Compact internal gaps support technical evidence; larger section gaps preserve a calm reading order.
Small radii carry compact details; 20 px frames the main work; pills belong only to brief statuses and groups.
Actions rise, inputs sit inset, and boards hold notes. Flat links and ordinary copy stay flat.
Press and reveal feedback stays short, flow-safe, and removable under reduced motion.
05
Responsive system
Desktop has room for wider compositions. Narrow layouts keep the same reading order and stack content before side-by-side layouts cause overflow.
Wide
Narrow
Stable order
01Action or selected item02Plain-language reveal03Player consequence04Exact evidence05Source and ownership06
Component language
These examples show the source’s wood, paper, raised controls, inset fields, and enamel markers. They document the implemented behavior without presenting the product-specific React components as reusable packages.
App-specific
Raised action, inset field, and enamel marker shown as distinct physical layers, including the source control’s 3 px press travel. Source: Challenge Lens src/styles.css.
App-specific
A paper slip pinned to the routed noticeboard, with visible paper thickness, feed marker, code stamp, device markers, and one raised open action. Source: ChallengeBoardView.tsx and challenge-board.css.
App-specific
Specific pending and failure language in the same visual register as the successful workflow. Source: ChallengeStatusView.tsx.
System · Light · Dark · compact menu
Reference-only · product theme module and root boot scriptReveal · fingerprint · impact · evidence · map fallback
Reference-only · domain models, routing, and product copyEmpty · invalid · failure · equal · success
Reference-only · deterministic comparison contractsLoading · ready · error · copy · Escape · focus return
Reference-only · renderer and sharing services07
Applied screens
These source-shaped examples show the decoder, a challenge result, and comparison notes. Text and challenge values remain synthetic; the approved Etienne field-scout image is loaded from Challenge Lens’s controlled asset route.
Decoder home
The first action stays in the first reading pass, supported by a concise promise and three compact benefits.Challenge Card
The reveal and its consequences lead; exact source evidence remains available without becoming the opening view.Paired field notes
The comparison stays neutral: supported differences only, with no winner, score, or good-versus-bad color coding.Source-asset note: the decorative Etienne field scout is displayed with the project owner’s confirmed permission. Bloons TD 6 and related game assets are owned by Ninja Kiwi. The image remains supplementary, credited, and excluded from portable tokens, registry source, and generated share output.
08
Accessibility + states
The visual system accounts for focus, keyboard use, loading, absence, failure, disabled actions, image loss, forced colors, both themes, and reduced motion.
Visible outside bevels, shadows, and overflow boundaries.
Reserved dimensions, polite status copy, and no hidden detail request.
No source items and no local filter match receive different explanations.
Validation, timeout, upstream, compatibility, rendering, and clipboard failures stay distinct.
Labels and semantics preserve meaning when an action is unavailable.
Names and analysis remain useful while optional imagery keeps its dimensions.
Decorative shadows step aside so controls and glyph silhouettes remain visible.
Non-essential transforms and transition durations collapse without losing hierarchy.
Current evidence
Semantic source trace · tested state components · deployed home, board, result, and comparison inspection · local light/dark inspection · 390 px overflow checkThis study does not claim a new screen-reader audit or complete manual WCAG conformance review.09
Implementation
The source uses React and TanStack Start, while the material design comes from semantic variables, gradients, edge and shadow layers, route-scoped CSS, and small interaction boundaries.
Route loaders and server rendering establish home, board, result, comparison, pending, and failure content before client enhancement.
Global materials serve the decoder and results. Board and comparison CSS stay route-scoped so other screens do not pay for them.
Original CSS environments and glyphs carry the identity. Source map and character imagery stay supplementary, credited, and failure-tolerant.
Current source build
87.41 kBShared client gzip12.83 kBShared CSS gzip4.94 kBBoard CSS gzip1.62 kBComparison CSS gzipMeasured from the July 19, 2026 local production build. Server-only image libraries contribute no intentional client code.10
Lessons + limits
The direction avoids copying the source game and does not give every container the same bevel, radius, or shadow.
I wanted to explore skeuomorphic design while making a passion project around my favorite game, Bloons TD 6.
The Challenge Lens interface is original rather than a copy of the game’s menus. Its layout, controls, materials, glyphs, and fallback artwork were designed for the project.
The rendered study shows the approved Etienne field-scout image through Challenge Lens’s controlled asset route as source evidence. That image is not included in the portable tokens or registry source.
The skeuomorphic details have clear roles. Wood contains work, paper carries content, raised controls move, inset fields accept input, and enamel markers show status. Those roles remain consistent in both themes.
Source facts, product interpretations, and unknown values also keep separate labels so the interface does not overstate what it knows.
The direction is too expressive for dense, urgent, formal, or prestige-oriented products. Its typography and scenery should never slow the primary task, reduce contrast, or hide focus.
The source React components remain reference implementations because they retain Challenge Lens data, routing, persistence, and API assumptions. Formwork publishes the guide and scoped token layer without bundling game imagery into those portable artifacts or making an installability claim.
Plain language, calm density, and precise error copy keep the playful style from weakening important information.
The product would rather show an evidence gate than invent a confident badge from an undocumented value.
Dense operations, clinical decisions, and restrained luxury products need a quieter material register.
The current source depends on Challenge Lens data and routing, so the reusable artifact stops honestly at tokens and decisions.
11
Design materials
Start with the guide and scoped token layer, then rebuild the components around the next product’s content and states.
The complete portable direction: visual rules, themes, components, responsive behavior, states, and limits.
OpenLight, dark, and system semantic roles plus type, spacing, shape, focus, and reduced-motion decisions.
OpenChallenge Lens components retain domain, routing, persistence, and API assumptions, so they remain reference implementations.
Not published yetRecommended sequence