CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
What this repository is
User documentation for the Exif Editor macOS app, written as Markdown content for a Docusaurus site. It is a
git submodule (exifeditor2.docs.git) of the parent ExifEditor repository (one level up), which holds the app
source; see ../CLAUDE.md for the app itself. The sibling submodule ../Docs Audio Tags Editor is the equivalent for
Audio Tag Editor.
There is no build, lint, or test tooling here — the Docusaurus site config lives elsewhere, so pages cannot be previewed from this repo. Changes are plain Markdown/JSON edits.
Structure and Docusaurus conventions
- Each top-level section is a directory. Ordering and labels come from either an
index.mdwith front matter (sidebar_label,sidebar_position,table_of_contents, optionaldescription) or a_category_.json(label,position,link.type: generated-index). Keepsidebar_positionvalues consistent with siblings when adding pages. - Images sit in an
images/folder next to the pages that use them (e.g.presets/images/). - Links between pages are relative paths, usually to the
.mdfile. index.md(root) is the landing page and keeps a hand-maintained list of tag pages under "Tags by standard"; update it when maker-note pages are added or removed.
Generated tag reference pages
The tag tables under tags/ (tags/exif/index.md, tags/exif/gps.md, tags/exif/maker-notes/<maker>.md,
tags/iptc.md, tags/xmp.md) are generated by the parent repo's Preprocessor
(../Preprocessor/src/docs_pipeline.py, from Airtable data and ExifKit/Sources/ExifKit/en.lproj/Tags.json). They
have no front matter and consist of | Title | Description | tables. Prefer fixing tag names/descriptions at the
source; hand edits to these files are overwritten on regeneration. Note that the pipeline's write_md_file writes to
Docs/docs/tags relative to the Preprocessor, not directly into this repo.
Hand-written pages under tags/ (e.g. tags/exif/maker-notes/index.md, tags/index.md, tags/file-types.md) are
not generated.
Just a note about tag pages - do not write what is and what is not visible in the UI. It's a tag reference.
Writing guidelines
- Documentation must describe the app's actual behavior. When documenting a feature, verify it against the Swift
source in the parent repo (
../Exif Editor,../ExifKit/Sources/...) rather than guessing — e.g. supported file types infile-types.mdand the manufacturer/Make/file-type table intags/exif/maker-notes/index.mdreflect what the code actually supports. - Refer to UI elements by their exact in-app labels in bold (e.g. Change file create time on save to:) and
keyboard shortcuts in backticks (e.g.
Cmd+1). - Edits to tags in the app are in-memory until files are saved; pages should be clear about when changes reach disk.