An honest object about an unfinished idea.
PulseMask began as a question: could a respirator be grown from a single photograph of the person who has to wear it, and could a treatment stage small enough to sit on a chin do anything real to the air passing through it?
Half of that question now has an answer. The other half does not, and this page is where the split is written down rather than smoothed over.
The geometry works. A browser tab takes a portrait and an interpupillary distance and returns 30 named, closed, printable meshes in millimetres — shell, visor frame, seal bead, inner cup, chin canister stack, valves, anchors, and a bronze-age armour layer over the top. The same engine runs headless in Node and writes the identical file. Nothing is sculpted by hand; every surface is a consequence of a parameter you can move.
The air treatment does not. At the default build the UV-C reactor delivers 0.22 mJ/cm² against a 3.0 mJ/cm² target for two-log inactivation. That is 7% of what it would need. The number is printed on the front page, in the headless readout, and here, because a study that hides its failing metric is decoration pretending to be research.
So PulseMask ships as what it honestly is today: wearable art, with the engineering left visible inside it. You can buy the files, print the piece, wear it to a show, and read every calculation that shaped it — including the one that does not close.
What PulseMask is, and what it is not
Two lists. They are not marketing balance — the right-hand column is the legally and physically operative one, and it wins every disagreement with anything else on this site.
What it is
- A wearable-art object — a costume, prop and display piece in respirator form.
- A parametric geometry engine that generates printable STL from a portrait.
- A published design study: the physics, the material choices and the failure modes are all written down and linked.
- A digital product — you buy files and print them, or reserve a piece I print and assemble by hand.
- A real-time rendering exercise — an in-browser 3D stage and a 34-design Shader Lab, both running WebGPU with TSL node materials.
What it is not
- Not a respirator. It provides no respiratory protection whatsoever.
- Not PPE and not personal protective equipment of any category.
- Not a medical device, not cleared or registered by any regulator anywhere.
- Not tested to NIOSH 42 CFR 84, EN 136, EN 143 or ISO 16900 — no protocol has been run against it at all.
- Not validated for fit. A single photograph cannot recover metric depth. The seal conforms by construction, which is a drawing, not a measurement.
- Not electronics. Horns, cells, PV arrays, LED rings and PZT elements are solid sculpt — no cavities, no wire routes, no emitter seats.
UV-C is a serious eye and skin hazard. The reactor is drawn fully enclosed with no line of sight to the wearer, and that geometry is the reason it can be drawn at all. Nothing sold here contains, includes or supports emitters, drivers or batteries. If you illuminate a build, use EL wire or visible LEDs only.
Exactly how far along this is
Readiness on the standard nine-point technology scale. The software is further along than the device, and quoting one number for both would flatter it — so here are two.
The device — TRL 2
Technology concept formulated. The architecture is specified end to end and costed in physics, but no hardware has been built and no experiment has been run. Nothing has passed TRL 3 because TRL 3 requires analytical or experimental proof of the critical function — and the critical function here is germicidal dose, which currently fails by a factor of fourteen.
The generator — TRL 5
Validated in a relevant environment. The engine runs in two independent hosts — a browser and a headless Node process — and produces byte-identical output from the same parameters. Files it writes load and slice. What holds it below TRL 6 is the absence of an automated manifold validator: geometry is closed by construction, not closed by verification.
The numbers, unrounded
Straight from node cli.mjs --metrics-only at default parameters. These are not marketing figures and they are not rounded in our favour.
Amber and red are not styling. They mark the figures that are approximations or failures, and they stay that colour until the underlying work is done — not until the copy is rewritten.
What happens next, in order
Phases are gated on evidence, not on time. Nothing moves to complete because a quarter ended. Two run in parallel right now because they are independent: one asks whether the thing fits, the other asks whether the thing works.
The honesty contract
A design study that flatters itself is worthless, and the failure mode is not dramatic — it is one constant nudged to make a readout turn green. So the project runs under written rules that apply to me and to every automated agent that touches the repository.
No metric improves by editing a constant
The UV inactivation constant, the 55% LED coupling loss, the cell energy density, the photovoltaic efficiency, the 2.22 face-width-to-IPD ratio and the 3.0 mJ/cm² dose target are empirical or conventional values. If one is wrong it gets challenged with a citation. It never gets edited to pass a check.
Modelled is labelled modelled
Germicidal dose, log reduction, capsid disruption, coalescence gain, solar harvest and runtime are all calculated from geometry and physics. None has been measured on a bench. Every place a figure appears, that word appears with it.
Numbers are not rounded in our favour
0.22 mJ/cm² is the number. It is 7% of target and the site says so in three places. Presentation rounding is how a study becomes a brochure.
Length alone does not buy dose
For a uniformly lit tube, dose reduces to P·η·ρ·r / 2Q — a longer reactor with the same emitters delivers the same dose. The interface therefore exposes LED density, not count, so the physics cannot be gamed by dragging a slider.
The disclaimer is load-bearing
The work-in-progress badge, the artwork band at the top of every page and the "modelled, not measured" language are structural. No automated change to them ships without a human reading it first.
Fit is drawn, not proven
The seal bead is placed at a fixed offset from the reconstructed face, so it conforms by construction. That is a modelling decision. Real seal error comes from face-reconstruction error and can only be measured against a scan — which is Phase 1.
These rules live in the repository as AGENT_PLAYBOOK.md §4 and are quoted verbatim into the instructions of every agent that works on the code.
Who makes this
PulseMask is a project of Aurelius Dynamic, a one-person studio working at the seam between real-time graphics and industrial design. Pulse Lab is the hardware-shaped end of it; the same geometry and shading tooling drives the studio's other work.
Zachary Auerbach · ORCID 0009-0001-3046-9104 — an author identifier, not a mark of peer review. Nothing here has been through one.
There is no team behind the "we" on this site, and there is no company standing behind a warranty. That is precisely why the scope statement above is written as hard as it is: a sole proprietor selling a decorative object has exactly one honest position, and this is it.
The site itself follows the same discipline as the product. No analytics, no cookies, no tracking pixels, no backend, no account. Geometry is generated in your browser and never uploaded. Ordering opens a pre-addressed email or a Stripe checkout — that is the whole data pipeline.