About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#108)

* About: contributors compiled in from contributors.json (grab bag + table, sortable, name toggle)

Adds the craftrules standard (standards/contributors.md) to Help > About DesignCraft, which now
has tabs About · Contributors · Models (`help.about {tab}` selects one).
contributors/contributors.json is generated by craftrules/scripts/contributors.py and baked
into the binary by crates/ui-egui/build.rs as static tables (crates/ui-egui/src/credits.rs).
Each contributor line: @username, opt-in display/real name, PRs, commits, lines +/−/Δ,
binary assets +/−, first/last commit. Sortable by every column; alphabetical ignores
case and the leading @.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Contributors docs: craftrules is two levels up (../../craftrules)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Contributors: self-submitted names in contributors/people.toml; AGENTS.md credit-yourself section

build.rs reads contributors/people.toml next to the generated contributors.json and shows a name only
for entries the generator verified as written by that person (craftrules standards/contributors.md).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Contributors: regenerate (verified people.toml entries)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Brandon Thomas
2026-10-07 21:16:42 -04:00
committed by GitHub
co-authored by Claude Opus 5.5
parent f17397c305
commit 927191d25f
12 changed files with 775 additions and 5 deletions
+118
View File
@@ -0,0 +1,118 @@
{
"schema": 1,
"repo": "storytold/designcraft",
"branch": "main",
"head": "f17397c305ecda9d644105f7a4e9b9d65d34bb60",
"head_date": "2026-10-07T18:55:09Z",
"commits": 294,
"unattributed_commits": 0,
"contributors": [
{
"login": "echelon",
"people_entry": true,
"github_name": null,
"prs": 22,
"commits": 260,
"lines_added": 99427,
"lines_deleted": 6061,
"binary_added": 42,
"binary_deleted": 2,
"first_commit": "2026-10-01T13:00:02Z",
"last_commit": "2026-10-07T18:55:09Z"
},
{
"login": "storybored379",
"people_entry": false,
"github_name": null,
"prs": 4,
"commits": 4,
"lines_added": 150,
"lines_deleted": 11,
"binary_added": 0,
"binary_deleted": 0,
"first_commit": "2026-10-03T16:31:40Z",
"last_commit": "2026-10-05T03:53:26Z"
},
{
"login": "CameronGilroy",
"people_entry": false,
"github_name": null,
"prs": 1,
"commits": 18,
"lines_added": 5236,
"lines_deleted": 381,
"binary_added": 0,
"binary_deleted": 0,
"first_commit": "2026-10-05T06:15:59Z",
"last_commit": "2026-10-05T18:56:22Z"
},
{
"login": "midasdf",
"people_entry": false,
"github_name": null,
"prs": 1,
"commits": 1,
"lines_added": 161,
"lines_deleted": 0,
"binary_added": 1,
"binary_deleted": 0,
"first_commit": "2026-10-05T15:01:53Z",
"last_commit": "2026-10-05T15:01:53Z"
},
{
"login": "ShaoWenbinSaleh",
"people_entry": false,
"github_name": null,
"prs": 1,
"commits": 2,
"lines_added": 6020,
"lines_deleted": 1278,
"binary_added": 0,
"binary_deleted": 0,
"first_commit": "2026-10-05T19:15:57Z",
"last_commit": "2026-10-06T14:32:13Z"
},
{
"login": "japbcoelho",
"people_entry": false,
"github_name": null,
"prs": 9,
"commits": 9,
"lines_added": 782,
"lines_deleted": 91,
"binary_added": 0,
"binary_deleted": 0,
"first_commit": "2026-10-06T01:43:44Z",
"last_commit": "2026-10-06T01:45:41Z"
}
],
"models": [
{
"id": "anthropic/claude-opus/5.5",
"company": "Anthropic",
"model": "Claude Opus",
"version": "5.5",
"commits": 266,
"lines_added": 83821,
"lines_deleted": 6091
},
{
"id": "anthropic/claude-opus/4.8",
"company": "Anthropic",
"model": "Claude Opus",
"version": "4.8",
"commits": 1,
"lines_added": 1633,
"lines_deleted": 3
},
{
"id": "openai/codex",
"company": "OpenAI",
"model": "Codex",
"version": "",
"commits": 1,
"lines_added": 26,
"lines_deleted": 5
}
]
}
+23
View File
@@ -0,0 +1,23 @@
# Contributor names for the About window (craftrules standards/contributors.md).
#
# Everyone who contributes is credited by GitHub username automatically. Anything more is up to
# you: add YOUR OWN entry below, in your own PR (commit it yourself). Never add someone else; a
# maintainer may add a person only when that person asked, recording where in consent_source.
#
# Easiest: python3 ../../craftrules/scripts/contributors.py --add-me . \
# [--real-name "Ada Lovelace"] [--display-name "Ada"] [--sync-github-name]
#
# Or copy this block, replacing your-github-username (every field is optional):
#
# [people.your-github-username]
# real_name = "Your Name" # shown when the viewer picks "Real name"
# display_name = "Nickname" # shown when the viewer picks "Display name"
# sync_github_name = true # or: use the name on your public GitHub profile as display name
#
# To remove your names, delete your entry (or set fields empty) in a PR. The next
# contributors.py run, and the next build, drop them.
[people.echelon]
real_name = "Brandon Thomas"
display_name = "Brandon Thomas"
sync_github_name = false