Files
photocraft/book/src
aiongg dfde38919e Merge PR #7883: Save As JPEG: JPEG Options dialog (quality 0–12, Baseline / Optimized / Progressive) (FILE-215-19)
crates/ui-egui/src/lib.rs: replay_save doc comment names both Export As and JPEG; replay_save uses the PR's FormatChoices::from_step, after main's export_dialog::replay branch.
docs/file-format-parity.md: header keeps main's text plus the JPEG Options item (last updated 2026-10-19); TIFF row is main's, JPEG row is the PR's; change-log rows once each, newest first.
docs/gaps.md: header keeps main's text plus the G10 item (last updated 2026-10-19).
2026-10-22 02:27:46 +00:00
..

PhotoCraft Documentation

PhotoCraft is a native image editor written in Rust. This book is the maintained entry point for installation, architecture, formats, automation, development, and security documentation.

The repository's existing docs/ directory remains authoritative for detailed design notes, parity reports, UI conventions, release procedures, and the complete control-protocol method reference. The book links to those documents instead of copying them.

Start here

Documentation for coding agents

Coding agents should read the following in order:

  1. AGENTS.md for repository rules and verification gates.
  2. README.md for product scope and current entry points.
  3. book/src/architecture/ for crate boundaries and command flow.
  4. book/src/automation/ before driving the CLI, control protocol, or MCP server.
  5. book/src/security/ before changing a parser, file I/O, automation, MCP, the control server, command execution, or serialization/deserialization.

Agents must treat document bytes, paths, command parameters, and automation messages as untrusted input. A page that describes a proposed control does not mean that control is implemented.

Status language

Security pages use four labels consistently:

  • Implemented: behavior confirmed in current source or tests.
  • Known limitation: an exposed risk or missing control in current source.
  • Proposed: a design direction that is not enforced by the current build.
  • Future hardening: useful follow-up work without an accepted implementation yet.