How 1612elphi/delphitools works
delphitools is a local-only browser toolkit for creative and practical tasks, organized as many modular tools rather than one linear product flow. Users enter through the tools or workflow routes, select a tool or workflow, and work with browser-side inputs and results. Substrata is a substantial graphics editor with document, layer, selection, effect, and export responsibilities. The README documents broad tool families; the tree supports their major capability areas, but sampled source does not establish every tool’s runtime wiring, so uncertain links are omitted.
Main entry points: tool.ts Substrata editor · registry.ts Tool registry · client.ts Pandoc engine · app.ts Ember application
Components 27
App and navigation
- Ember application
app/app.ts - Route map
app/router.ts - Tool route
app/routes/tools/tool.ts - Tool controller
app/controllers/tools/tool.ts - Tool registry
app/components/tools/registry.ts
Tool capabilities
- Image tools
app/lib/image-compress.ts - Audio video tools
app/lib/media-convert.ts - PDF tools
app/lib/pdf-compress.ts - Text tools
app/lib/pandoc/client.ts - Colour tools
app/lib/colour-maths.ts
Workflows
- Workflow route
app/routes/workflow.ts - Workflow engine
app/lib/workflows.ts - Flow service
app/services/flow.ts
Substrata editor
- Substrata editor
app/lib/substrata/tool.ts - Document model
app/lib/substrata/doc-model.ts - Layer operations
app/lib/substrata/layer-ops.ts - Selection operations
app/lib/substrata/select-ops.ts - Image effects
app/lib/substrata/effects.ts - Export runner
app/lib/substrata/export-run.ts - Document database
app/lib/substrata/db.ts - Layout preferences
app/lib/substrata/layout-storage.ts
Browser runtime
- Pandoc worker
app/lib/pandoc/pandoc.worker.ts - Pandoc engine
app/lib/pandoc/client.ts - PDF worker
app/lib/pdf-compress.worker.ts - Browser APIs
- Pandoc WASM host
Other components
- Creative user
Connections 27
- Creative user → Ember application: opens
- Ember application → Route map: initializes
- Route map → Tool route: dispatches
- Tool route → Tool controller: resolves
- Tool controller → Tool registry: selects tool
- Creative user → Workflow route: opens workflow
- Workflow route → Workflow engine: runs
- Workflow engine → Flow service: uses flow state
- Tool registry → Image tools: exposes
- Tool registry → Audio video tools: exposes
- Tool registry → PDF tools: exposes
- Tool registry → Text tools: exposes
- Tool registry → Colour tools: exposes
- Creative user → Substrata editor: edits artwork
- Substrata editor → Document model: updates
- Substrata editor → Layer operations: manipulates layers
- Substrata editor → Selection operations: selects regions
- Substrata editor → Image effects: applies effects
- Substrata editor → Export runner: exports
- Document model → Document database: persists document
- Substrata editor → Layout preferences: stores layout
- Text tools → Pandoc engine: converts text
- Pandoc engine → Browser APIs: fetches WASM
- Pandoc engine → Pandoc worker: sends requests
- Pandoc worker → Pandoc WASM host: initializes engine
- PDF tools → PDF worker: compresses off-thread
- PDF worker → Browser APIs: loads MuPDF