imagoforge

Local-first, evidence-aware image-to-3D studio in Crystal.

ImagoForge

ImagoForge is a local-first, evidence-aware studio for turning one or more images into reviewable 3D candidates. It is written primarily in Crystal and ships with a browser workspace for source selection, measurable edit hints, versioned candidates, and visible uncertainty boundaries.

Project status: early prototype. ImagoForge does not yet provide a production image-to-3D pipeline, and it does not claim that hidden geometry or metric scale can be recovered faithfully from arbitrary images.

What exists today

  • A deterministic Crystal domain kernel with typed source, observation, hint, and immutable revision identifiers.
  • A narrow legacy PNG-to-relief engine with STL/OBJ export and topology audit.
  • A local browser prototype with multiple source projections, a generic procedural 3D fixture, typed millimetre edits, immutable preview versions, and cancellable simulated work.
  • A review-only Qwen3.6-27B multimodal adapter. Its normalized bounding boxes and structural observations remain suggestions that require human review.
  • Frontier specifications for the universal studio and the native TRELLIS.2 backend planned in cogni-ml.

The browser is not connected to the Crystal kernel or reconstruction workers yet. Native TRELLIS.2 inference, image upload persistence, exact source-to-mesh correspondence, GLB delivery, and real geometry mutation remain future slices.

Repository layout

src/imago_forge/                    Crystal kernel and legacy relief engine
web/                                Local browser prototype
docs/FRONTIER_SDD.md                Universal studio boundary
docs/TRELLIS2_NATIVE_FRONTIER_SDD.md Native backend boundary
docs/IMPLEMENTATION_PLAN.md         Studio implementation ledger
scripts/                            Blender and public-release checks

Crystal CLI

Requirements:

  • Crystal 1.21 or newer
  • Shards
  • Optional: Blender 5.x for independent mesh inspection
  • Optional: Qwen3.6-27B GGUF, matching vision projector, and a compatible llama-mtmd-cli

Build and test:

shards install
crystal spec
CRYSTAL_CACHE_DIR=/tmp/imagoforge-crystal-cache shards build --release

Create a deterministic flat-backed relief from your own PNG:

bin/imagoforge build input.png \
  --front-crop 0,0,512,512 \
  --height-mm 60 \
  --output /tmp/imagoforge-model.stl

The relief path is a bounded legacy method, not a universal reconstruction algorithm. Inspect the mask and height previews before relying on the mesh.

Optional Qwen3.6-27B review

Model locations are never hard-coded. Pass them explicitly or configure:

export IMAGOFORGE_LLAMA_MTMD=/path/to/llama-mtmd-cli
export IMAGOFORGE_QWEN_MODEL=/path/to/Qwen3.6-27B.gguf
export IMAGOFORGE_QWEN_MMPROJ=/path/to/mmproj-BF16.gguf

bin/imagoforge analyze input.png \
  --front-crop 0,0,512,512 \
  --output /tmp/imagoforge-review.json

The output is accepted only when it is one strict JSON object matching the Crystal-side contract. It is never fed directly into metric geometry or topology construction.

Browser prototype

cd web
npm ci
npm run dev

Open http://localhost:3000. Verification commands:

npm run lint
npm run typecheck
npm test

Public-source boundary

Private source/reference images, generated meshes, local databases, model weights, and credentials are intentionally excluded from Git. Before a public release, run:

bash scripts/public_release_guard.sh --history

The first public branch is intentionally a single parentless root commit so private prototype assets cannot remain reachable through earlier history.

License

ImagoForge is available under the MIT License. See LICENSE.

Repository

imagoforge

Owner
Statistic
  • 0
  • 0
  • 0
  • 0
  • 1
  • about 6 hours ago
  • August 2, 2026
License

MIT License

Links
Synced at

Sun, 02 Aug 2026 03:31:05 GMT

Languages