Add configurable platform acronyms & icons for unpacking
Problem
Platform acronyms and icons are hardcoded, preventing custom folder names and visuals during unpack/organization.
Goal
Let users override acronyms and icons per platform, applied across unpack, scan, and UI.
Scope
-
Data:
settings.platformAcronyms: { [platformId]: acronym }
settings.platformIcons: { [platformId]: iconSlug }
- Defaults from
@crocdesk/shared
-
API:
- Extend
GET/PUT /settings to include overrides
- Validate: acronym
[a-z0-9-_]{2,12}, icon must exist
-
Behavior:
- Unpack path:
{acronym}/{gameTitle}/…
- Manifest includes
platformAcronym
- Fallback to defaults when unset
-
UI:
- Settings section with acronym input + icon picker
- Live folder preview, validation, reset to defaults
-
Migration:
- Backfill new settings keys with defaults
-
Testing:
- Unit: precedence, validation, fallback
- E2E: unpack/scan use overrides; UI persists
Acceptance
- Per-platform overrides configurable and persisted
- Unpack/scan consistently use overrides
- Manifests stay backward compatible
- UI reflects overridden icons and acronyms
Add configurable platform acronyms & icons for unpacking
Problem
Platform acronyms and icons are hardcoded, preventing custom folder names and visuals during unpack/organization.
Goal
Let users override acronyms and icons per platform, applied across unpack, scan, and UI.
Scope
Data:
settings.platformAcronyms: { [platformId]: acronym }settings.platformIcons: { [platformId]: iconSlug }@crocdesk/sharedAPI:
GET/PUT /settingsto include overrides[a-z0-9-_]{2,12}, icon must existBehavior:
{acronym}/{gameTitle}/…platformAcronymUI:
Migration:
Testing:
Acceptance