63 files changed, +15,953 lines. Source repository: stull-atlas
Before this sprint, 8 oxides were available as Z-axis choices. Now there are 23 individual oxides, organized by role in the glaze melt.
| Oxide | Role in the Glaze |
|---|---|
| Li₂O new | Most powerful flux per mole. Lowers viscosity dramatically. Small amounts shift color response, reduce thermal expansion. From spodumene, petalite, lithium carbonate. |
| Na₂O | Primary alkali flux. High expansion (crazing risk). Develops color in cobalt/copper. From soda feldspar, nepheline syenite, soda ash. |
| K₂O | Slightly less active than Na₂O. Lower expansion. Slightly different color development. From potash feldspar. |
| Oxide | Role in the Glaze |
|---|---|
| CaO | Workhorse flux. Glossy at high calcium, dry/matte at high alumina. Promotes color clarity. From whiting, wollastonite, dolomite. |
| MgO | Buttery mattes. Smooths surfaces. Promotes opacity. From dolomite, talc, magnesium carbonate. |
| SrO new | Similar to CaO but wider firing range, different crystal effects. Lead-free alternative for bright colors. From strontium carbonate. |
| BaO | Satin surfaces, enhances blues. Toxic in soluble form. From barium carbonate. |
| ZnO | Promotes crystallization (zinc crystals at high %), increases fluidity, reduces thermal expansion. From zinc oxide. |
| PbO new | Historical low-fire flux. Brilliant color response, wide firing range. Toxic — flagged in safety metrics. From lead bisilicate (fritted). |
| Oxide | Role in the Glaze |
|---|---|
| TiO₂ | Promotes crystallization, opacity (rutile). Yellow/cream colors. Breaks up glaze surfaces. From rutile, titanium dioxide. |
| ZrO₂ | Opacifier. Stiffens melt, promotes whiteness. From zircopax, ultrox, zirconium silicate. |
| SnO₂ | Classic opacifier (tin glazes). White, opaque. More expensive than zirconium. From tin oxide. |
| Oxide | Role in the Glaze |
|---|---|
| MnO / MnO₂ | Browns, purples, plums. Speckle when coarse. Manganese dioxide stronger than monoxide. |
| NiO | Grays, browns, blue-greens depending on base glaze. Mutes other colorants. |
| CuO / Cu₂O | Greens in oxidation, reds in reduction (copper reds). Cu₂O is the reduced form. |
| CoO | Strongest colorant — intense blues at 0.5–2%. Works in nearly any base. |
| Cr₂O₃ | Greens (forest to lime depending on base). Chrome-tin pinks with SnO₂. |
| P₂O₅ | Opalescence, milky blues (chun/jun glazes). Promotes phase separation. From bone ash. |
| Axis | What It Shows |
|---|---|
| Total Flux Moles | Sum of all flux oxide moles — a single “how much flux?” number. |
| Thermal Expansion (COE) | Appen coefficient of expansion approximation — predicts crazing/shivering. Uses published coefficients for 11 oxides. |
These go beyond individual oxides to compute derived properties from the full UMF, using published ceramic science.
| Metric | Formula Basis | What a Potter Learns |
|---|---|---|
| NBO/T | Mysen & Richet model | The fundamental measure of glass structure. NBO/T = 0 means fully polymerized (hard, durable). NBO/T = 4 means completely depolymerized (fluid, run-prone). Most glazes: 0.5–2.5. |
| Optical Basicity | Duffy & Ingram, 21 oxides | Predicts color response. High basicity shifts Fe toward amber/brown, Cu toward blue. Low basicity gives greens. Explains why the same 2% iron looks different in two glazes. |
| Flux Entropy | Shannon information entropy | Measures flux diversity. Entropy = 0 means one flux dominates. High entropy = many fluxes in balance — more complex, interesting surfaces. |
| CaO:MgO | Direct ratio | CaO-dominant (glossy, color-bright) vs MgO-dominant (buttery matte, opacity). |
| Combined Alkali | Li₂O + Na₂O + K₂O | Total soluble flux load. High = glossy, fluid, high expansion. Low = more stable. |
| Na₂O:K₂O | Direct ratio | Two glazes with same total alkali behave differently if one is sodium-dominant vs potassium-dominant. Different color, expansion, eutectic behavior. |
| Viscosity Index | Flux-weighted sum / glass formers | Quick estimate of melt viscosity. High = runny (dripping risk). Low = stiff (crawl risk). |
| Surface Tension | Dietzel field-strength model | Predicts crawling and beading. High surface tension melts pull back from edges. |
| Durability | SiO₂ / (Na₂O + K₂O + Li₂O) | Chemical resistance. Below ~3.0, the glaze dissolves in dishwater. Above ~5.0, highly durable. |
| Total Colorant | Sum of transition metals | Total color load regardless of which oxide. A different perspective than individual oxides. |
| Fe:Ti Ratio | Fe₂O₃ / TiO₂ | High = cleaner iron colors. Low = broken, variegated surfaces (rutile blues, aventurine). |
An interactive ternary diagram where potters visualize the three flux families (R₂O / RO / B₂O₃) and see how their glazes distribute across that space. Clicking a point shows what recipes live in that flux ratio neighborhood.
While exploring the 2D or 3D Stull chart, shift+click selects glazes (orange borders). Selected glazes appear in a new “Blend” sidebar tab. Click “Line Blend” / “Triaxial” / “Quadaxial” and it launches the blend calculator pre-filled with those recipes. This bridges the gap between discovering glazes and blending them.
Three commits fixing edge cases in data representation: z-clamp, fluxRatio, cone range, null-cone handling. 2D colorscale now matches 3D. Robust surface interpolation. Cone labels use full ceramic notation (06 through 13) with a formatCone() utility.
Replaced entire dataset: 9,712 recipes from a full SQL export, up from 3,214. 3× the data. Every visualization, search, and blend calculation now operates on a significantly richer dataset.
Three commits built the full Supabase schema: 40 tables covering glazes, recipes, users, profiles, explorations, materials, kilns, firing schedules, and more. This is the foundation for user profiles, personal recipe databases, and social features.
| Change | Impact |
|---|---|
| Database delivery | Switched from 8 parallel chunks (122 MB total) to single gzipped file (26 MB). 79% smaller download. |
| Search fixed | Switched to FTS5-enabled sql.js WASM build (1.2 MB). Full-text search across entire Digitalfire corpus now works in-browser, no server required. |
| Rich content | Internal links between articles, markdown rendering, dead-link cleanup. |
| Polish | Hidden pricing (everything free), hidden stats display, cache-busted all assets, fixed logo linking to /digitalfire/. |
Built from the ceramics-community knowledge graph. Every connected person, school, organization, place, and technique gets their own page showing all connections.
| Directory | Pages | Contents |
|---|---|---|
| /community/people/ | 297 | Individual ceramicists |
| /community/schools/ | 193 | Schools, universities, residencies |
| /community/orgs/ | 54 | Organizations, publications, companies |
| /community/places/ | 44 | Studios, galleries, venues |
| /community/techniques/ | 30 | Firing methods, glaze techniques |
Three explorer views: force-directed graph, geographic map, and 3D globe.
Currently live: 40 axes (23 oxides + 17 computed). The roadmap takes this to ~124 axes in 8 phases. Each phase adds new lenses to the 3D Stull chart.
Straightforward published formulas. Highest practical value.
| Axis | What It Predicts |
|---|---|
| ASI | Alumina Saturation Index. Al₂O₃ / (Na₂O + K₂O + Li₂O + CaO). ASI < 1 = peralkaline (glossy, fluid). ASI > 1 = peraluminous (matte, crystallization). Maps directly to the Stull chart’s left-right axis. |
| Refractive Index | Appen model, 7 oxide coefficients. Observable optical property — brilliance, luster, depth. Why some glazes look “alive” and others look flat. |
| Glass Density | Appen molar volume model. Physical weight of the glass. Affects application thickness and glaze-body fit. |
| Crawl Risk | Surface tension × flux / glass formers. Flags glazes likely to bead up and crawl. |
| Craze Risk | COEglaze − COEbody. The single most practical axis for functional ware. Positive = crazing. Negative = compression. |
| Fluidity | Flux-effectiveness-weighted sum. Weights each flux by actual melting power (Li₂O × 3.0, Na₂O × 2.0, MgO × 0.6). |
Semi-empirical composites. Higher-level questions.
| Axis | What It Answers |
|---|---|
| Matteness Predictor | “Will this glaze be matte?” Combines ASI with mattifying oxides minus glossy alkalis. |
| Boron Ratio | B₂O₃ / (B₂O₃ + SiO₂). Explains why two Stull-identical glazes look different: boron substituting for silica. |
| Compositional Entropy | Shannon entropy across ALL oxides. Simple 3-oxide vs complex 10-oxide glazes separate clearly. |
| Excess Alkali | (R₂O) − Al₂O₃. The “free modifier.” Positive = glossy, fluid. Negative = peraluminous. |
| KNaO Equivalent | Unified alkali “dose” normalized to Na₂O-equivalent based on ionic radius. |
| Leaching Risk | (PbO + BaO + CuO) / (SiO₂ / R₂O). Food safety flag. |
Published additive models with full coefficient tables. Real material science.
| Axis | What It Measures |
|---|---|
| Young’s Modulus | Stiffness / scratch resistance. Makishima-Mackenzie 1973. |
| Vickers Hardness | Practical abrasion resistance. Derived from Young’s modulus + Poisson’s ratio. |
| Poisson’s Ratio | Low = brittle, high = ductile. Predicts chip resistance. |
| Tg Estimate | Glass transition temperature (°C). Where the glaze freezes on cooling. Annealing and thermal shock. |
| Thermal Shock Resistance | Combines fracture strength, modulus, Poisson, and expansion. The ovenware metric. |
Topological constraint theory, Q-speciation, thermodynamics. PhD-level physics made into a slider.
| Axis | What It Reveals |
|---|---|
| Mean Coordination | Average cation coordination number. 4 = tetrahedral network (strong). 6 = depolymerized (weak). |
| Constraints/Atom | Phillips-Thorpe-Mauro model. nc = 3 means “isostatic” — the perfect glass (how Corning designed Gorilla Glass). |
| Q⁴ Fraction | Fully cross-linked silica fraction. Correlates with durability and stiffness. |
| Q² Fraction | Chain-like structures (metasilicates). High Q² = tendency to crystallize as wollastonite/enstatite. |
| Liquidus Estimate | Temperature (°C) where last crystal dissolves. Above this = homogeneous melt. Below = crystals forming. |
Semi-quantitative but visually revealing.
| Axis | What It Shows |
|---|---|
| Devitrification Index | Predicts crystal mattes, aventurine, willemite. High = crystals likely on slow cooling. |
| Hydration Energy | Rigorous durability — accounts for each oxide’s water reactivity. |
| Modifier Fraction | Above the Greaves percolation threshold (~0.16–0.20), leaching jumps dramatically. |
| Fragility Index | Strong (m≈20, gradual viscosity change) vs fragile (m≈60+, sudden freeze). Predicts crystallization. |
| Fe Redox Estimate | Fe³⁺/Fe²⁺ ratio from optical basicity + temperature. Determines iron color: amber (ox) vs celadon green (red). |
Requires cone → Kelvin via Orton lookup, unlocking true thermodynamic models.
| Axis | What It Predicts |
|---|---|
| Firing Temperature | Orton cone → °C standard conversion. Foundation for all below. |
| GRD Viscosity | Giordano-Russell-Dingwell 2008 model — actual viscosity in Pa·s at firing temperature. What glass factories use. |
| Liquidus Overshoot | Tfiring − Tliquidus. Positive = fully melted. Negative = crystals survive. The single most predictive melt indicator. |
| Working Range | Temperature span where the glaze is workable. Wide = forgiving. Narrow = must nail the temperature. |
| Heatwork Excess | Over-fired or under-fired relative to chemistry? Over-fired = running. Under-fired = incomplete melt. |
| Volatilization Index | Predicts mass loss from volatile oxides. The glaze out of the kiln ≠ the glaze you batched. |
| Fe Color (Oxidation) | Predicted iron color spectrum in oxidation: amber → brown → honey. |
| Fe Color (Reduction) | Predicted iron color spectrum in reduction: celadon green → blue. |
Beyond UMF chemistry — recipe, surface labels, statistics, geography, time.
| Category | Axes |
|---|---|
| Recipe / Ingredient | Ingredient count, frit %, free silica fraction, clay content, LOI estimate, material diversity |
| Surface / Label | Surface mismatch (predicted vs labeled), surface probability P(matte), opacity predictor |
| Statistical | Anomaly score (Mahalanobis distance), feature density (k-NN), percentile rank, nearest surface boundary |
| Limit Formulas | Limit distance (inside/outside UMF envelope), safety score (composite of all checks) |
| Taxonomy | Type centroid distance, nearest type boundary, type confidence |
| Temporal | Recipe age (years), innovation score (distance from all prior recipes at time of creation) |
| Color / Appearance | Colorant per flux (effective colorant concentration in the melt) |
| Interaction Effects | Mixed alkali effect (peaks at 50:50 Na:K), boron N₄ fraction (trigonal → tetrahedral transition) |
| Fitness Composites | Food safety score, microwave score (low transition metals = safe) |
The math of “fussy” vs “forgiving.”
| Axis | What It Reveals |
|---|---|
| Robustness Score | Max property swing from ±0.01 change in any single oxide. Low = forgiving. High = tiny weighing error changes everything. |
| Critical Oxide | Which single oxide causes the largest swing if mis-measured by ±5%? Tells you where to be most careful. |
| Error Width | Given ±2% weighing error on all ingredients, what’s the range of possible outcomes? Monte Carlo propagation. |
| Version | Name | Status | What It Adds |
|---|---|---|---|
| v3.4 | The Compass | shipped | Weighted similarity search + surface prediction |
| v3.5 | The Gallery | shipped | Photos in exploration, visual browsing |
| v3.5.1 | The Instruments | planned | 120 Z-axis options in 8 phases (A–H above) |
| v3.6 | The Walk | planned | Recipe interpolation — “how do I get from my glaze to that one?” |
| v3.6.3 | Wet Blending | henry | Mix finished glazes by ratio, compute resulting UMF, sweep blend ratios |
| v3.6.4 | Flux Ratio Controls | henry | Per-element flux breakdown as plottable axes, flux triangle |
| v3.7 | The Constellations | planned | Auto-discover and name glaze families; fuzzy grouping henry |
| v3.8 | The Knowledge Graph | vision | Visual graph navigation with photos — glazes as a network |
| v3.9 | The Studio | planned | Material substitution, bidirectional recipe calculation |
| v3.10 | The Time Machine | planned | Historical glaze evolution, animated timeline |
| v3.11 | The Laboratory | planned | 17 calculator/prediction engines: fit, viscosity, crawl, defect, color, batch, LOI, comparison, substitution |
| v3.12 | The Kiln | planned | Firing schedule builder, heatwork calculator, test tile notebook, QR tracker |
| v3.13 | The Bench | planned | Glaze application physics, clay body calculator, recipe sheet generator |
| v3.14 | The Map | planned | Phase diagram overlays, glaze layering predictor, historical glaze library |
| v3.15 | The Voice | planned | Plain-English glaze narrative generator |
| v3.16 | The What-If Machine | planned | Dual-mode cockpit: Studio Mode + Science Mode. One slider, everything moves. |
| v3.16.5 | Living Recipe Card | planned | NCECA-ready printable handout with all data |
| v4.0 | The Community | vision | Shared knowledge, social features |
| v4.1.0 | Personal Profiles | henry | Each potter gets their own page and recipe database |
| v4.1.1 | Free Tier | henry | No paywall at launch — make it useful first |
| v4.2 | The Classroom | vision | Workshop exercises, teaching tools, curriculum modules |
| v4.3 | The Bridge | vision | Universal import: GlazeMaster, Matrix, Insight, OCR, Glazy sync |
v3.4 Compass → defines “similar” (distance function) v3.5 Gallery → shows what “similar” looks like (photos) v3.5.1 Instruments → 120 lenses on every glaze (physics, predictions, risk) v3.6 Walk → shows how to get there (recipe delta, wet blending) v3.7 Constellations → groups become named places (fuzzy boundaries) v3.8 Knowledge Graph→ the places become a navigable world v3.11 Laboratory → 17 prediction engines built on Instruments data v3.16 What-If → everything moves together when you change one thing v4.0 Community → other potters’ explorations enrich the landscape
© 2026 Stull Atlas - Thanks Henry