Skip to content

Species

This page as Markdown/docs/catalogue/species.mdView .md

Species carry the physical properties that solid-lumber families inherit. Naming one in a material is what gives the validator something to reason with: a pine cleat and a maple rail of identical size take the same screw and hold it differently, and the report says so.

materials:
- id: rail_stock
from: lumber.hardwood.s4s
species: walnut
thickness: 38
width: 190

Available in lumber.hardwood.s4s and lumber.hardwood.rough.

Id Density E MOR Movement T / R Screw face / end Hardness
walnut American black walnut 610 11 600 101 2.57 / 1.82 high / low 4490
white_oak White oak 755 12 300 105 3.50 / 1.80 high / low 6000
red_oak Red oak 700 12 500 99 3.47 / 1.37 high / low 5700
ash White ash 670 12 000 103 2.60 / 1.60 high / low 5870
maple Hard maple 705 12 600 109 3.23 / 1.60 high / low 6450
cherry Black cherry 560 10 300 85 2.53 / 1.17 medium / low 4230
beech European beech 720 14 300 103 3.87 / 1.87 high / low 5800
birch Yellow birch 670 13 900 114 3.00 / 2.43 high / low 5580
poplar Yellow poplar 455 10 900 70 2.73 / 1.40 medium / poor 2420

Available in lumber.softwood.s4s.

Id Density E MOR Movement T / R Screw face / end Hardness
pine Scots pine / European redwood 510 10 100 83 2.47 / 1.33 medium / poor 2420
spruce European spruce / whitewood 450 10 200 70 2.57 / 1.27 low / poor 1800
douglas_fir Douglas fir 530 13 400 85 2.43 / 1.60 medium / poor 2900
western_red_cedar Western red cedar 350 7700 51 1.67 / 0.80 low / poor 1560
larch European larch 590 12 500 92 2.50 / 1.43 medium / poor 3200

Units: density kg/m³ · E (modulus of elasticity) MPa · MOR (modulus of rupture) MPa · movement % per 10% change in moisture content, tangential / radial · hardness N (Janka).

Density sets the weight on the BOM and feeds the load checks. A queen bed in white oak is noticeably heavier than the same bed in pine, which matters if it has to be carried upstairs assembled.

Modulus of elasticity drives every deflection check — shelf sag, rail bending under max_assembled_load. It is the number that decides whether an 900 mm shelf needs to be 19 mm or 25 mm, and the finding tells you which.

Modulus of rupture is the breaking stress, used for the margin against outright failure rather than visible sag.

Movement, tangential and radial, is seasonal shrinkage per 10% change in moisture content. Tangential movement is roughly twice radial in most timbers, which is why a flat-sawn panel moves more than a quarter-sawn one. The wood-movement checks read these together with the part’s grain to work out whether a captured panel will split its frame.

White oak at 3.50% tangential is the mover in this list; western red cedar at 1.67% is the most stable. The arithmetic is width × coefficient × (MC swing ÷ 10): a 560 mm flat-sawn white-oak panel through a 4% seasonal swing moves 560 × 0.035 × 0.4 ≈ 7.8 mm. Indoor timber typically swings 4–5% between winter and summer, so substitute your own figure — the point is that it is millimetres, not fractions of one, and a frame that did not allow for it splits.

Screw withdrawal, face and end, is graded high · medium · low · poor. The fastener checks use it, and note that every timber here rates worse in end grain than in face grain — which is why forbid_into_end_grain exists on the fixtures and why bed bolts, which thread into a steel cross dowel rather than into wood, are the right answer for a rail end.

Hardness is Janka, in newtons. It does not drive a check; it is there for choosing a timber for a surface that gets used.

Figures are at approximately 12% moisture content, from the USDA Wood Handbook (FPL-GTR-282, 2021), Tables 5-3 and 5-5, converted to SI. Movement coefficients are total green-to-ovendry shrinkage divided by 30% MC, the standard linear approximation for seasonal movement in service.

These are published material properties, not anyone’s dataset. The catalogue is CC0-1.0.

A panel behaves the way it does because of how it is built, not what tree it came from, so sheet materials carry their own properties — see Sheet goods. The one exception is sheet.veneered.mdf, which takes a species for the veneer, because the veneer is directional and the sheet has a show face.