Variation 21 / Slow reveal

Work developed in the dark.

The site feels like a darkroom: red safelight, chemical trays, gradual exposure. Proof is the contact sheet — labeled exposures, not marketing.

  • Safelight
  • Develop
  • Stop bath
01 / Contact sheet

Proof as exposed negatives.

Each contact-sheet cell is a proof exposure. Unrevealed images begin in shadow; click to develop and reveal the exposure underneath. Every proof tier stays labeled.

Real Verified work, live integrations, documented clients.
Concept Fiction labeled fiction. Synthetic data, unbuilt ideas.
Built demo Working interfaces without client contracts or live data.
Contact 01
Real

Darkroom toolchain

A static HTML/CSS/JS contact-sheet proof surface. Proof labels remain visible before and after reveal.

Exposure 01 · Static
Contact 02
Concept

Chemical timer as interface

A speculative concept: development time becomes the primary interaction. Longer develop reveals more detail.

Exposure 02 · Concept
Contact 03
Built demo

Develop-to-reveal interaction

The click-to-develop mechanic is a working demo. It uses exposure state and respects reduced-motion preferences.

Exposure 03 · Built demo
Contact 04
Real

Truth rules

The site follows the JD Workshop constitution: fiction is labeled, real work is labeled, and no fake social proof is presented as fact.

Exposure 04 · Static
Contact 05
Concept

Monochrome movement library

A concept for a shared monochrome motion toolkit: grain algorithms, vignette presets, safelight color controls.

Exposure 05 · Concept
Contact 06
Built demo

Batch exposure control

The safelight and develop sliders are a working demo. Batch develop applies a timed reveal across all unexposed contacts.

Exposure 06 · Built demo
02 / Process notes

Metaphor with constraints.

The darkroom metaphor is useful because it enforces a material discipline: slow reveals, monochrome evidence, labels that do not leave.

03 / Archive state

Leave no exposed negative undeveloped.

This is a distinct static variation. Every proof is labeled before exposure. It is ready for iteration and later Vercel deployment as darkroom.jdworkshop.com.