ArtCraft AI 图像生成桌面应用实战指南:三步拉起、看懂机制并改第一行代码 ArtCraft AI 图像生成桌面应用实战指南三步拉起、看懂机制并改第一行代码【免费下载链接】artcraftArtCraft is an intentional crafting engine for artists, designers, and filmmakers项目地址: https://gitcode.com/GitHub_Trending/ar/artcraft克隆 ArtCraft 仓库后执行一条 bash 脚本一个可以生成 AI 图像、编辑图像、并且能直接改源码的桌面应用就出现在你面前。ArtCraft 是 Rust Tauri 写的 AI 创作应用前端 React后端 Rust两层之间用原生 IPC让 Web 层与 Rust 层直接对话的通道通信。这份指南按四件事推进装好三样依赖、拉起开发环境、看懂端口与进程分工、完成第一次代码修改全程约 10 分钟。装好三样依赖并核对版本源码构建只依赖三样组件版本都有明确下限对照下表逐项确认。组件版本要求获取方式Rust最新稳定版rustupNode.js20 以上推荐 v24.13.0nodejs.org 或 nvmTauri CLI2.10.0cargo install tauri-cli --version ^2 --locked 前端的 Nx 和 Vite 由 npm 在工程内本地安装不需要全局装。完整清单见 _docs/dev_setup.md。执行启动脚本把开发环境拉起来Mac 和 Linux 只需一条命令Windows 需要两个终端各跑一个脚本。git clone https://gitcode.com/GitHub_Trending/ar/artcraft cd artcraft ./script/artcraft/unix_dev.sh脚本内部按固定顺序启动共六步检查 Node.js 是否 20 以上、cargo-tauri 是否可用。检查node_modules/vite是否存在缺失时自动npm install。把 Vite 绑定到127.0.0.1从 5193 端口开始逐个尝试直到占到一个可用端口。前端 socket 真正绑定后才把这个精确的devUrl传给 Tauri。Rust 通过原生 IPC 与前端通信不再开第二个 HTTP 端口。CtrlC 一次停掉全部Vite、Rust 监听器、桌面应用。想换起始端口加一个环境变量ARTCRAFT_DEV_PORT6200 ./script/artcraft/unix_dev.shWindows 用户开两个终端分别运行powershell.\script\artcraft\windows_frontend_dev.ps1 .\script\artcraft\windows_rust_dev.ps1看懂端口与进程的分工运行时只有三类进程、一个端口Vite、Rust 监听器、桌面窗口。Vite 独占一个回环端口默认从 5193 开始找HTTP 与热更新 WebSocket 共用它。Rust 侧不监听额外端口全部走 IPC原生 HTTP 桥会归一化回环源避免自动选端口后登录或媒体加载失败。监听器只管理自己拉起的进程Rust 监听器退出时它会关掉 Vite 并透传退出码不会按名字或端口去杀别的应用。三类改动的反馈方式各不相同你改了什么反馈方式结果JS / TS / React / CSSVite 热重载 React Fast Refresh窗口内即时生效不重启Rust 代码含依赖的 workspace crate自动重新编译并重启进程重启内存状态丢失SQLx 元数据 / SQLite 迁移监听文件变化自动重载⚠️ Rust 侧重载等于重启进程。改端口、登录或认证逻辑前先读 docs/desktop-session-regression.md 的回归检查项。认六个关键目录根 Cargo.toml 是一个 39 个成员 crate 的 Cargo workspace多个 Rust 包共享依赖与配置的集合。新手只需先认这六个crates/desktop/artcraft/— Tauri 主应用窗口、配置、能力声明都在这里。crates/api_clients/— 各 AI 提供商的 Rust 客户端fal、Grok、Sora、Midjourney、World Labs 等。artcraft-native/— 纯 Rustegui写的桌面应用不经过 Web 层。frontend/apps/artcraft/— React Vite 前端主应用图像、视频、3D、音频页面都在src/pages/下。frontend/libs/components/— 共享组件库promptbox、moodboard、video-editor 在其中。_database/sql/artcraft_migrations/— SQLite 任务数据库的迁移文件。改一行文案验证热重载最小可动手的改点是提示词组件里的一行占位文案改完保存即可验证全链路。打开 frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx找到 435 行附近的placeholderDescribe your image...。把文案改成自己的内容保存。桌面窗口里的输入框占位文字即时更新应用没有重启。这一条路径同时验证了Vite 在监听文件、热更新通道正常、组件被正确引用。想再验证 Rust 侧改crates/desktop/artcraft/下任意一个.rs文件等它重新编译并重启即可。 回滚只需把文案改回去热重载会再刷一次。快问快答五个高频问题问端口 5193 被占用了怎么办答脚本会自动尝试后续端口也可以手动设ARTCRAFT_DEV_PORT指定起点。问前端依赖没装脚本会挂吗答不会。脚本检查到node_modules/vite缺失就自动执行npm install你也可在frontend/下手动装。问第一次 Rust 编译特别慢答正常。依赖全部编完后后续增量编译快很多。问不想连数据库只想检查 Rust 代码答SQLX_OFFLINEtrue cargo check -p artcraft问怎么产出可安装的分发包答执行 script/artcraft/unix_build.sh它设置VITE_ENVIRONMENT_TYPEproduction和SQLX_OFFLINEtrue后跑cargo tauri build。 产物在crates/desktop/artcraft/target/release/目录。问npm install报 ENOTEMPTY 错误答多半是 pnpm 残留文件与 npm 冲突。清掉frontend/下的node_modules与 pnpm 相关文件后重装启动脚本的预检会直接提示。下一步动作与文档入口下一步做两件事在 Prompt 框输入一句提示词生成你的第一张图然后改一处 Rust 代码看整个应用重启一遍。继续深入时入口是这三个_docs/dev_setup.md — 完整环境清单与启动器行为说明docs/desktop-session-regression.md — 改端口、登录逻辑前的回归检查项script/artcraft/ — 开发、构建、预览的全部脚本【免费下载链接】artcraftArtCraft is an intentional crafting engine for artists, designers, and filmmakers项目地址: https://gitcode.com/GitHub_Trending/ar/artcraft创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考