Files
figcraft/docs/contributors.md
T
Luis 4cacc96631 Release: refresh contributor credits for each release (#2059)
About > Contributors still showed an old snapshot, because nothing
regenerated contributors/contributors.json before a release. Opt in to
the shared refresh from craft-common-actions: a read-only credits job
regenerates the snapshot for the release commit, and the shared release
workflow installs it before every source build. The snapshot is not
committed back.
2026-11-07 00:27:48 +01:00

1.9 KiB

Contributors in the About window

About ▸ Contributors credits everyone who contributed to FigCraft, and About ▸ Models credits the AI models named in Co-Authored-By trailers.

Decision

  • Two files, both compiled into the binary by the UI crate's build.rs (nothing is read from disk or the network at run time; the web build has them too):
    • contributors/contributors.json: commit stats per GitHub username; never hand-edit. Release builds regenerate it for the release commit (.github/workflows/release.yml, credits job); the copy in the repository is not updated.
    • contributors/people.toml: the names people chose for themselves. Each contributor adds only their own entry, in their own PR.
  • Each contributor gets one line: GitHub username (always), display name (opt-in, or their synced GitHub profile name), real name (only if they told us), merged PRs, commits, lines added, lines deleted, binary assets added, binary assets removed, first and last commit date.
  • The list is shown as a grab bag (names flowing as text) or a table, in the same order. It sorts by name, PRs, commits, lines added, lines deleted, line delta, binary assets added/removed, first or last commit date. The name toggle cycles Username → Display name → Real name; a missing name falls back to @username. Alphabetical sorting is case-insensitive and ignores the @.

Credit yourself

Add your entry to contributors/people.toml in a PR you commit yourself (every field optional):

[people.your-github-username]
real_name = "Your Name"
display_name = "Nickname"
sync_github_name = true   # use the name on your public GitHub profile as display name

Names show for entries committed by their own user (or by a maintainer with a consent_source). Delete your entry to remove your names. Git author names and emails are never recorded.