GitHub guide · storytold/photocraft

PhotoCraft on GitHub: the repository, the source build and the license

ArtCraft develops PhotoCraft in the open. The storytold/photocraft repository holds the full Rust source, the release installers, the documentation and the issue tracker. Here is how to find your way around it.

Stars
46.5k
Forks
7.4k
Language
Rust
License
Apache-2.0 / MIT

Repository numbers recorded on October 12, 2026. They change daily, so treat them as a snapshot.

Orientation

What is in the PhotoCraft GitHub repository?

The repository describes PhotoCraft as an open-source photo editor written from scratch in pure Rust. It is a Cargo workspace: the desktop application lives under apps, the engine is split into reusable crates, and a documentation book covers architecture, file formats, automation and security.

Development is busy. On the day we checked there were several hundred open issues and pull requests, and installers for every platform were attached to the v0.7.0 release.

01

apps/

The applications built from the workspace, including the desktop editor that you run with cargo run -p photocraft.

02

crates/

The engine as reusable Rust crates, from compositing and file formats to the command system the interface is built on.

03

docs/ and book/

Developer documentation, the roadmap, the Photoshop parity checklist and the release process.

04

examples/plugins/

A sample plug-in (an invert filter) written in Rust that shows how extensions hook into the editor.

05

AGENTS.md

The starting point the project recommends for new contributors and for AI coding agents.

06

Releases

Signed installers for macOS, Windows, Linux, FreeBSD and the web build, with SHA-256 checksums.

From source

How to build PhotoCraft from GitHub

Building takes a recent Rust toolchain and a few minutes of compile time.

  1. 1

    Install Rust 1.90 or newer

    PhotoCraft needs Rust 1.90+. If you do not have Rust yet, install it with rustup from rustup.rs, then confirm the version.

    rustc --version
  2. 2

    Clone and run

    Clone the repository and start a release build of the desktop app. Pass a file path after -- to open a document directly.

    git clone https://github.com/storytold/photocraft.gitcd photocraftcargo run --release -p photocraft# open a PSD on launchcargo run --release -p photocraft -- image.psd
  3. 3

    Run the tests

    The workspace has its own test suite, and the project also tests against pinned sets of real PSD and PNG files.

    cargo test --workspace
  4. 4

    Optional: bundled CJK fonts

    Release builds include fonts for Japanese and other CJK text from a separate repository. Without it, PhotoCraft falls back to the fonts installed on your system.

    git clone https://github.com/storytold/craft-fonts ../craft-fontsCRAFT_FONTS_DIR="$PWD/../craft-fonts" cargo run --release -p photocraft

For developers

Built to be scripted

One design decision sets PhotoCraft apart from most editors: every action is a command.

01

Command-line tool

A headless CLI ships with each release for scripts and batch jobs. On macOS it is a signed, notarized binary.

02

JSON control channel

The running app can be driven by structured commands. The project's own screenshots are rendered this way.

03

MCP server

An MCP server exposes the same engine to AI agents, so an assistant can open, edit and export documents.

Legal

PhotoCraft license: Apache-2.0 and MIT

PhotoCraft is dual licensed under the Apache License 2.0 and the MIT License, the same pairing most of the Rust ecosystem uses. Both are permissive: you may use, modify and redistribute the code, including commercially, as long as you keep the license and copyright notices.

The licenses cover the source code. Names and logos are a separate matter, so a fork or a third-party site should not present itself as the official PhotoCraft.

This is a plain-language summary, not legal advice. Read the LICENSE files in the repository before you redistribute anything.

Get involved

How to report bugs and contribute

  1. 1

    File a useful issue

    The maintainers ask for your operating system, document size, layer count and a screenshot. Search existing issues first.

  2. 2

    Read the contributing guide

    Start with AGENTS.md and the docs folder, which explain the architecture and coding conventions before you open a pull request.

  3. 3

    Talk to the team

    Feature requests, early builds and day-to-day discussion happen in the ArtCraft Discord, linked from the official site and the README.

FAQ

PhotoCraft GitHub questions

For developers, tinkerers and the curious.

What is the official PhotoCraft GitHub repository?

github.com/storytold/photocraft. It is maintained by the ArtCraft team and linked from the official PhotoCraft page on getartcraft.com.

Is PhotoCraft really written in Rust?

Yes. The editor, its GPU compositor and its PSD reader and writer are written in Rust, and the interface is native rather than a web view.

Which Rust version do I need to build it?

Rust 1.90 or newer. Use rustup to install or update the toolchain, then run cargo run --release -p photocraft from the repository root.

Can I use PhotoCraft code in a commercial product?

The Apache-2.0 and MIT licenses allow commercial use, modification and redistribution provided you keep the required notices. Trademarks are not covered by those licenses.

Where are the PhotoCraft releases on GitHub?

Under Releases in the repository. Each release lists every installer plus SHA256SUMS.txt. The newest one is always at /releases/latest.

Does PhotoCraft have an MCP server?

Yes. Because every action is a command, the engine can be reached from the UI, the CLI, a JSON control channel or an MCP server, which makes it usable by AI agents.