GitHub 指南 · storytold/photocraft

PhotoCraft GitHub:仓库、源码构建与许可证

ArtCraft 以公开的方式开发 PhotoCraft。storytold/photocraft 仓库里有完整的 Rust 源码、各版本的安装程序、文档和 issue 跟踪。下面带你理清这个仓库的结构。

Star 数
46.5k
Fork 数
7.4k
语言
Rust
许可证
Apache-2.0 / MIT

仓库数据记录于 2026 年 10 月 12 日。这些数字每天都在变,请把它们当作某一时刻的快照。

仓库概览

PhotoCraft GitHub 仓库里有什么?

仓库对 PhotoCraft 的介绍是:一款用纯 Rust 从零写成的开源照片编辑器。它是一个 Cargo workspace:桌面应用位于 apps 目录下,引擎被拆分成可复用的 crate,另有一本文档手册(book)涵盖架构、文件格式、自动化和安全。

开发相当活跃。在我们查看的当天,仓库有数百个未关闭的 issue 和 pull request,v0.7.0 版本下附带了所有平台的安装程序。

01

apps/

由该 workspace 构建出的应用,包括用 cargo run -p photocraft 运行的桌面编辑器。

02

crates/

以可复用 Rust crate 形式组织的引擎,从合成、文件格式,到界面所依托的命令系统。

03

docs/ 和 book/

开发者文档、路线图、与 Photoshop 的功能对齐清单,以及发布流程。

04

examples/plugins/

一个用 Rust 编写的示例插件(反相滤镜),演示扩展如何接入编辑器。

05

AGENTS.md

项目建议新贡献者和 AI 编程智能体首先阅读的文件。

06

Releases

macOS、Windows、Linux、FreeBSD 的已签名安装程序和 Web 版,均附 SHA-256 校验和。

从源码开始

如何从 GitHub 构建 PhotoCraft

构建需要较新的 Rust 工具链,外加几分钟的编译时间。

  1. 1

    安装 Rust 1.90 或更高版本

    PhotoCraft 需要 Rust 1.90+。如果还没装 Rust,可以从 rustup.rs 获取 rustup 来安装,然后确认版本。

    rustc --version
  2. 2

    克隆并运行

    克隆仓库,以 release 模式构建并启动桌面应用。在 -- 之后传入文件路径,可以直接打开文档。

    git clone https://github.com/storytold/photocraft.gitcd photocraftcargo run --release -p photocraft# 启动时打开一个 PSDcargo run --release -p photocraft -- image.psd
  3. 3

    运行测试

    workspace 自带测试套件,项目还会用固定版本的真实 PSD 和 PNG 文件集进行测试。

    cargo test --workspace
  4. 4

    可选:内置 CJK 字体

    发布版本的构建内置了来自另一个仓库的字体,用于显示日文及其他 CJK 文字。没有它,PhotoCraft 会回退到系统中已安装的字体。

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

面向开发者

为脚本化而设计

有一个设计决策让 PhotoCraft 有别于大多数编辑器:每个操作都是一条命令。

01

命令行工具

每个版本都附带一个无界面(headless)的 CLI,用于脚本和批处理任务。在 macOS 上,它是已签名并经过公证的二进制文件。

02

JSON 控制通道

运行中的应用可以由结构化命令驱动。项目自己的截图就是这样渲染出来的。

03

MCP 服务器

MCP 服务器把同一个引擎开放给 AI 智能体,这样 AI 助手就能打开、编辑和导出文档。

法律事项

PhotoCraft 许可证:Apache-2.0 与 MIT

PhotoCraft 采用 Apache License 2.0 和 MIT License 双重许可,这也是 Rust 生态中大多数项目采用的组合。两者都属于宽松许可证:只要保留许可证和版权声明,你就可以使用、修改和再分发这些代码,包括用于商业用途。

许可证覆盖的是源代码。名称和标识是另一回事,所以 fork 版本或第三方网站不应自称是官方的 PhotoCraft。

以上只是通俗的概括,不构成法律建议。在再分发任何内容之前,请先阅读仓库中的 LICENSE 文件。

参与进来

如何反馈 bug 并参与贡献

  1. 1

    提交一个有用的 issue

    维护者希望你提供操作系统、文档尺寸、图层数量和一张截图。提交前请先搜索已有的 issue。

  2. 2

    阅读贡献指南

    在发起 pull request 之前,先读 AGENTS.md 和 docs 文件夹,其中说明了架构和编码规范。

  3. 3

    和团队交流

    功能建议、抢先版本和日常讨论都在 ArtCraft 的 Discord 中进行,官方网站和 README 里都有链接。

FAQ

PhotoCraft GitHub 常见问题

写给开发者、爱折腾的人和好奇的人。

PhotoCraft GitHub 官方仓库是哪个?

github.com/storytold/photocraft。它由 ArtCraft 团队维护,getartcraft.com 上的 PhotoCraft 官方页面也链接到这里。

PhotoCraft 真的是用 Rust 写的吗?

是的。编辑器、GPU 合成器以及 PSD 的读写模块都是用 Rust 写的,界面是原生的,而不是 Web 视图。

构建它需要哪个版本的 Rust?

Rust 1.90 或更高版本。用 rustup 安装或更新工具链,然后在仓库根目录运行 cargo run --release -p photocraft。

我可以在商业产品中使用 PhotoCraft 的代码吗?

Apache-2.0 和 MIT 许可证允许商业使用、修改和再分发,前提是保留必要的声明。商标不在这些许可证的覆盖范围内。

GitHub 上的 PhotoCraft 发布版本在哪里?

在仓库的 Releases 下。每个版本都列出了全部安装程序以及 SHA256SUMS.txt。最新版本始终位于 /releases/latest。

PhotoCraft 有 MCP 服务器吗?

有。因为每个操作都是一条命令,引擎可以通过界面、CLI、JSON 控制通道或 MCP 服务器来访问,AI 智能体因此也能使用它。