2D TO SCULPTURAL TYPE

Use this folder with Astra in a file/terminal-capable Codex session and your own
FLORA connection. No membership in the author's FLORA organization is required.
Fresh generations use your workspace, permissions, and balance. Rendering the
bundled example runs locally and does not require a FLORA account.

QUICK START

1. Unzip the whole folder. Open it in Codex, choose Astra if available, and say:

   Read SKILL.md in this folder. Run the local preflight and render the bundled
   example first. For new work, use my own FLORA workspace and create a new
   project. Check live models and quote the cost before generating.

2. Local prerequisites: Python 3.9+, curl, and FFmpeg with libx264.
   FFmpeg: https://ffmpeg.org/download.html
   Python: https://www.python.org/downloads/
   Blender is optional; it is only used for procedural 3D studies.

   From this folder on macOS/Linux:

   python3 -m venv .venv
   .venv/bin/python -m pip install -r requirements.txt
   .venv/bin/python scripts/preflight.py
   .venv/bin/python scripts/assemble.py

   On Windows, use `py -3 -m venv .venv` and `.venv\Scripts\python.exe`
   in place of `.venv/bin/python`. Put FFmpeg/curl on PATH. Both preflight.py
   and assemble.py accept --ffmpeg /path/to/ffmpeg if needed.

   Output: generated/sculptural-type.mp4, 1080x1350, 25fps, 13 seconds.
   This is a new assembly of included examples, not a new FLORA generation.

3. Connect FLORA if it is not already connected in Codex:

   codex mcp add flora --url https://agents.flora.ai/mcp
   codex mcp login flora

   Log in with your own FLORA account. An installed, connected FLORA plugin
   also works. Official setup: https://developer.flora.ai/mcp/install/codex/

   Give Astra a new word, construction reference, and spending limit. Example:
   Use SKILL.md to make B from pale concrete galleries. Start with one branch,
   keep total FLORA usage under $1, and render the accepted result.

NEW LETTERS AND OPTIONAL BLENDER

   .venv/bin/python scripts/make_glyphs.py --text B --out generated/glyphs
   blender --background --python build_components.py -- --text B --glyphs generated/glyphs/glyph-paths.json --out generated/structural

If Blender is not on PATH, use its executable path. On macOS, commonly:
/Applications/Blender.app/Contents/MacOS/Blender

The font helper accepts ASCII letters and digits and a custom static TTF/OTF
via --font. The builder writes GLB, .blend, and PNG. --skip-render omits PNG.
Normal Python cannot run build_components.py because bpy comes with Blender.

CONTENTS

- SKILL.md: workflow and recipient-account setup.
- scripts/: preflight, font exporter, signed-upload helper, MP4 assembler.
- assets/fonts/: static Geist Bold and its SIL Open Font License.
- examples/media/: local F/L/O/R/A glyphs, sculptures, world stills, and clips.
- examples/manifest.json: editable assembly recipe with relative local paths.
- examples/intro.mp4 and original-edit.mp4: original FLORA demonstration.
- examples/*-structural-kit.glb: independent procedural studies.
- build_components.py and geist-bold-paths.json: optional geometry builder.
- references/flora.md: model lookup hints and the recipient-owned upload flow.
- VALIDATION.txt: completed tests and account-specific limitations.

For a new word, use a new manifest with your own local outputs. Remove or replace
the FLORA intro. The assembler fits complete glyphs/sculptures and crops only the
world to its panel. It trims long clips and holds short clips' last frames.
Audio is not included. Example glyph PNGs have been flattened to RGB white to
prevent hidden palette colors from contaminating generation.

PROVENANCE

The image/video examples are prior approved exploration. Local GLBs are separate
structural studies, not the geometry that generated those videos. The original
canvas includes native reconstructions made from images. It is optional:
https://app.flora.ai/join-project/ed896613-a7d4-4300-9d46-22b5d2c6a6f4

Geist Bold source: vercel/geist-font commit
10dc7658f13c38a474cde201bb09a4617267545b, fonts/Geist/ttf/Geist-Bold.ttf.
License: assets/fonts/OFL.txt. New model generations vary; exact reproduction
of the example images and videos is not guaranteed.
