Create. Edit. Design.
A modern, open-source graphics editor inspired by the workflows of Adobe Fireworks CS6.
FireCraft is an independent, clean-room reimplementation of the hybrid vector-and-bitmap graphics editor workflow associated with Adobe Fireworks. It is written in Rust and built around a shared document engine and command registry used by the desktop application, WebAssembly build, command-line interface, scripting host, and Model Context Protocol (MCP) server.
The goal is not to reproduce Adobe's code or redistribute its assets. The goal is to preserve the productive Fireworks-style workflow—precise vector and bitmap editing, layered documents, web-oriented export, and an integrated creative workspace—while improving portability, performance, automation, and long-term maintainability.
Trademark and independence notice: Adobe, Fireworks, Photoshop, Illustrator, and Macromedia are trademarks or registered trademarks of Adobe Inc. FireCraft is an independent open-source project and is not affiliated with, sponsored by, or endorsed by Adobe. Those names are used only to describe compatible workflows and file formats.
Latest published release: v0.2.5 · 3 November 2026
The workspace version is 0.2.5. Development continues beyond that release: the active roadmap includes editor reachability, daily-driver canvas workflows, and a dedicated CS6-inspired shell-fidelity campaign. FireCraft is functional software under active development—not yet a feature-complete replacement for every Fireworks CS6 workflow.
The current documented engine surface includes 253 registered commands and a CS6 DOM parity matrix of 268 carried, 3 partial (evidence-gated), and 0 missing. These figures describe the engine/DOM surface, not complete GUI parity: some commands are available through the command palette or automation surfaces before they have a corresponding menu or polished inspector workflow.
- Native document format: Fireworks PNG (
.fw.png) read/write, including preservation of unrecognized document nodes and chunks. - Import and export: PNG, JPEG, GIF, BMP, TIFF, WebP, WBMP, SVG, and PSD workflows, with animated GIF import/export and web-oriented export workflows.
- Vector editing: paths, contours, Bézier handles, primitive shapes, boolean operations, gradients, fills, strokes, alignment, and arrangement.
- Bitmap editing: paint and retouch tools, pixel-selection modes, bitmap objects, and raster composition.
- Canvas interaction: transform handles, numeric transforms, path-node editing, gradient handles, guides, grid, snapping, zoom, and selection controls.
- Text and symbols: text objects and rich text attributes, symbol definitions and instances, nested symbol workflows, and nine-slice guides. In-canvas text editing landed 2026-11-06.
- Effects: live effects and a filter surface backed by the compositor.
- Automation: a shared command registry, journal/replay, ExtendScript-compatible
.jsfexecution, headless CLI, browserpostMessagebridge, and MCP server. - Web application: a WebAssembly build using the same editor shell and engine as the native application.
The editor is being brought closer to the Fireworks CS6 workspace rather than treated as a generic graphics canvas. The active shell-fidelity work covers:
- A CS6-style menu and panel workflow, including movable, resizable, collapsible panels and persisted layout.
- Selection-aware canvas context menus.
- A CS6-oriented tool strip and panel inventory.
- A selection-aware Properties inspector with engine-backed editing.
- Remaining panel work, including Optimize, Common Library, CSS Properties, Find and Replace, and Slices.
- UI snapshot and interaction gates to prevent visual and behavioral regressions.
Some of these items are partially implemented or still planned. The authoritative, task-level status is maintained in docs/NEXT.md; see its Phase 22 for the shell-fidelity campaign.
- Try the app: usage guide
- See what works and what is incomplete: feature map · current gaps
- Browse all project docs: documentation index
- Current work and next tasks: task board
- Contributing or handing off work: agent handoff · repository rules
The images below are repository screenshots of the application. They are point-in-time views; consult the roadmap for current implementation status.
The first capture is a 1280×800 frame of the current shell with a vector object selected, taken from the optimized web bundle built on 2026-11-04. It is evidence for that build and state, not a general parity claim — see the screenshot audit for the captures, measurements, and their limits.
The same workspace in the dark theme — Tools panel down the left edge, a vector object selected on a transparent canvas, and the Optimize panel previewing a PNG-24 export:
Use the latest GitHub release for published binaries and the WebAssembly bundle. The v0.2.5 release includes Linux x86_64 desktop and CLI archives, a Debian package, and a web bundle. Other platform packaging scripts are available in the repository, but a build recipe is not the same as a tested, published binary.
Requirements: a Rust toolchain compatible with the workspace's rust-version, plus the platform dependencies described in docs/TOOLCHAINS.md.
git clone https://github.com/aliasfoxkde/FireCraft.git
cd FireCraft
# Run the repository's full CI gate
cargo run -p xtask -- ci
# Build the native editor and CLI
cargo build --release -p app
cargo build --release -p app-cli
# Build the browser distribution
cargo run -p xtask -- dist --webcargo run -p xtask -- ci
cargo run -p app-cli -- info document.fw.png
cargo run -p app-cli -- convert input.fw.png output.fw.png# Inspect a document
cargo run -p app-cli -- info artwork.fw.png
# Canonically re-emit a Fireworks PNG document
cargo run -p app-cli -- convert input.fw.png output.fw.png
# Export a document
cargo run -p app-cli -- export artwork.fw.png output.webp
# Import a raster image into a new Fireworks PNG document
cargo run -p app-cli -- import photograph.jpg new-document.fw.png
# Start the MCP server for an existing document
cargo run -p app-cli -- mcp artwork.fw.pngSee docs/USAGE.md for the complete CLI, GUI shortcut, browser-embedding, and MCP reference.
FireCraft is organized around one document model and one command authority:
- Engine and document model: document state, editing commands, history, and serialization.
- Composition and rendering: deterministic CPU reference rendering and GPU-accelerated interactive canvas rendering.
- I/O: Fireworks PNG plus raster, vector, and layered interchange formats.
- Application shell: native and WebAssembly editor UI.
- Automation surfaces: CLI, scripting, journal/replay, browser bridge, and MCP.
The GUI and automation interfaces are intended to drive the same engine commands; this avoids maintaining separate editing semantics for each frontend.
| Document | Purpose |
|---|---|
| Features | Implemented feature surface and evidence/gates |
| Usage | Build instructions, CLI, shortcuts, browser bridge, MCP |
| Next / Roadmap | Active phases, acceptance criteria, and open tasks |
| Gaps | What is missing or evidence-gated, with the authority for each count |
| Doc index | The full documentation map |
| Releasing | Artifact build and deployment procedures |
| Progress | Session-level status and historical progress |
| Planning | Product plan, file-format notes, and architecture |
| Handoff | Engineering handoff and agent runbook |
| Gaps | Current gaps and evidence-gated items |
| Task board | Active tasks, priority, and status |
| Toolchains | Platform toolchains and packaging recipes |
| WebOS | Browser embedding contract |
| Attribution | Third-party asset and license ledger |
| Repository rules | Clean-room policy, repository rules, and workflow |
The FireCraft identity is built around a clean, custom-traced flame silhouette and a vertical ember-red-to-orange gradient. The canonical logo is SVG; matching raster exports supply the Linux application icon and repository artwork. The vector-editing illustration below shows the same flame in an active design state, with Bézier anchors, tangent handles, path outlines, and the gradient control line. It is brand artwork—not an application screenshot and not an Adobe or Fireworks asset.
Third-party assets must retain their license notices and be recorded in docs/ATTRIBUTION.md. FireCraft's source is licensed under Apache-2.0.
Licensed under the Apache License 2.0.

