Editable source geometry
========================

Every flag is one JavaScript module in art/<id>.mjs. It declares the flag's official
proportions (ratio), its drawing units (size), its official colours (colors) and a
body() function that returns the SVG shapes, built with the helpers in lib/kit.mjs
(stripes, crosses, stars, crescents, the Union Flag construction…). lib/present.mjs
turns one flag into its four presentations.

geometry.json holds the same flags already evaluated: for each id, the drawing units,
the colours and the flag body as plain SVG markup in drawing units — open it in any
editor, or paste a body into <svg viewBox="0 0 W H">…</svg>.

To regenerate a presentation with Node.js 18 or later:

    import { svgFile } from './lib/present.mjs';
    import flag from './art/fr.mjs';
    console.log(svgFile(flag, 'circle', { title: 'Flag of France' }));
