RetroAchievements Score
Achievement of the Week
{{ widgetData.ra_aotw.title }}
{{ widgetData.ra_aotw.game }}
{{ widgetData.ra_aotw.points }} pts
No data available
Random Pick
🎲
{{ randomPickGame.name }}
▶ Open
No games loaded yet
Library Snapshot
Games {{ allGames.length.toLocaleString() }}
Platforms {{ platforms.filter(p => p.rom_count > 0).length.toLocaleString() }}
Favorites {{ favRomIds.size.toLocaleString() }}
Recently Unlocked
{{ ach.Title }}
{{ ach.GameTitle }}
No recent achievements
{{ section.title }} {{ section.games.length }}
{{ game.platformShort }}
★ {{ game.rating }}
{{ game.name }}
No games yet.
Account
Library
System
User Interface
Customize your dashboard experience.
Dashboard Widgets
Choose which widgets appear above your game library.
RetroAchievements Score
Your RA point total and global rank. Shows hardcore, softcore, or both.
Hardcore Softcore Both
Achievement of the Week
The current RA featured achievement with badge, title, and points.
🎲
Random Game Picker
Can't decide what to play? Let the dice pick a random game from your library.
Library Snapshot
At-a-glance view of your library: total games, platforms, and favorites count.
Recently Unlocked
Your 3 most recently earned RetroAchievements with badge and game name.
↑↓ row ←→ game Enter open Esc deselect
Scan Library
{{ scanPlatformFilter.length === 0 ? 'All platforms' : scanPlatformFilter.length + ' platform' + (scanPlatformFilter.length > 1 ? 's' : '') }}
All platforms {{ platforms.length }}
{{ scanSources.length === 0 ? 'Metadata sources' : scanSources.length + ' source' + (scanSources.length > 1 ? 's' : '') }}
Select all available
{{ currentScanType ? currentScanType.label : 'Scan type' }}
Please select at least one metadata source to enrich your library with artwork and metadata

Configure settings above and click SCAN to begin

Platforms: {{ scanStats.scanned_platforms }} / {{ scanStats.total_platforms }} · {{ scanStats.identified_platforms }} identified
ROMs: {{ scanStats.scanned_roms }} · {{ scanStats.new_roms }} new
Firmware: {{ scanStats.scanned_firmware }}
Scanning…
{{ ctxMenu.game.name }}
{{ ctxMenu.game.platformName }}
Play
Download
{{ favRomIds.has(ctxMenu.game.id) ? 'Unfavorite' : 'Favorite' }}
Add to Collection
Share
Refresh Metadata
Edit
Delete
No cover
{{ detail.name }}
Version
{{ detail.year }} ·
{{ detail.platformName }}
· Verified
{{ tag }} {{ r }} {{ l }}
{{ sc.label }}
{{ detail.userRating || '—' }}
Your Rating
Clear rating
{{ detail.userDifficulty || '—' }}
Difficulty
{{ n }}
Clear

{{ detail.summary }}

Genres
{{ g }}
Developer
{{ c }}
Franchise
{{ f }}
Collections
{{ c }}
{{ ht.label }}
{{ ht.value }}
{{ ht.count }} players
Similar Games {{ similarSource }}
Finding similar games…
{{ g.platformShort }}
{{ g.name }}
No notes yet.
{{ note.title }}
{{ note.updatedAt }}
Public Private
{{ note.content || '(empty)' }}
+ Add Note
No RetroAchievements data for this game.
{{ detail.achievements.length }}
Achievements
{{ detail.achTotalPoints }}
Total Points
{{ detail.achProgressionCount }}
Progression
{{ detail.achMissableCount }}
Missable
All Progression Missable Win Condition ✓ Earned ⊘ Locked
{{ ach.title }}
{{ ach.description }}
{{ ach.points }} pts
{{ ach.type.replace('_', ' ') }}
Loading saves…
Add to Collection
{{ collPickerGame?.name }}
+
New Collection
{{ coll.name }} {{ coll.rom_count }}
No collections yet. Create one above.
Changelog
v0.4 April 23, 2026
Settings pages — full settings UI accessible from every avatar menu item. Left-side nav with three groups (Account, Library, System) and eight sections: Profile, User Interface, Library Management (folder mappings / excluded / missing games tabs), Metadata Sources (provider card grid), Client API Tokens, Administration (users table, scheduled/manual tasks, task history), Server Stats, and About.
Platform metadata tabs — each platform detail view now has Library / Firmware / Cores / Config tabs. Firmware lists BIOS files with status badges (present, missing, optional). Cores shows available emulator cores with default/installed tags. Config displays platform-specific key–value settings.
Upload button moved inline — the upload ROM button is now a subtle circle icon sitting directly to the right of the stats row (game count + disk size) in the platform hero, matching the icon style used in the game detail panel header.
Platform game list — flat grid with A-Z jump — removed visual letter-group dividers. Games are still sorted alphabetically and the A-Z sidebar still highlights and scrolls to each letter, but there are no longer full-width separator rows breaking up the grid.
Scan page — full scan UI accessible from the avatar menu. Includes platform multi-select (with search), metadata source multi-select, and six scan type options with descriptions matching the real RomM UI. Clicking SCAN runs a live-animated mock scan with streaming ROM results, MATCHED/NOT IDENTIFIED badges, and real-time stats.
Exact RomM placeholder covers — games without cover art use the same SVG generator as RomM's frontend (ported from covers.ts): purple/coral gradient blobs with a white D-pad icon, shifting per game name hash.
Widget settings consolidated — dashboard widget toggles now live inside Settings → User Interface alongside language, theme, and home/gallery toggles, styled consistently with the rest of the settings.
Light mode & auto mode — Dark / Light / Auto theme picker in Settings → User Interface now actually switches the UI. Light mode uses a bright, airy palette with blurred game cover art still visible as a washed-out background. Auto follows the OS preference and updates live. Preference persisted to localStorage.
Comprehensive light mode coverage — every surface themed: nav, user menu, game cards, widget bar, platform grid and hero, game detail panel (background, all tabs, action buttons, popups), search overlay, upload modal, collection picker, context menu, scan page, all settings sections, changelog modal, and mobile nav.
v0.2 April 22, 2026
Stale-while-revalidate caching everywhere — cached data renders instantly on every page (dashboard, game detail, platforms, collections, favorites), fresh data fetches silently in the background. No more waiting on navigation.
Per-game detail cache — each game's detail data is stored under its own localStorage key so revisiting a game opens with zero shimmer. Writes are deferred off the main thread to avoid jank.
Infinite scroll — platform and collection pages now load 72 games per page (matching RomM's own API pagination) and silently fetch the next batch when you're 300px from the bottom.
Backlog dashboard section — games marked Backlogged automatically appear in a horizontal scroll row at the bottom of the dashboard. Driven entirely by localStorage so it stays accurate; updates in real time as you change statuses.
Saves tab — new tab in the game detail panel between Achievements and Metadata, showing all save states (with screenshots, emulator, date) and save files (filename, size, date, download button) fetched from /api/states and /api/saves.
Similar Games — section at the bottom of the Overview tab. Scores cached games by franchise match first, then genre overlap, then falls back to an API search or same-platform titles. Shows up to 12 results.
Platform icon on every game tile — the platform SVG floats directly on the cover art in the bottom-left corner (no pill box) with a subtle drop-shadow so it reads on any background. Falls back to a text abbreviation pill if no icon file exists.
Game status badge on every tile — when a status is set, a colored frosted-glass badge sits in the top-left. When no status is set, a dashed-circle ghost button fades in on hover so you can set a status from any tile on any page without opening the game detail panel.
Reactive status updates — status changes reflect instantly across every tile on every page without a reload, powered by a Vue reactive ref mirroring localStorage.
Favorites page fully updated — was using a stale card template; now has platform icons, status badges, hover status button, and context menu parity with all other grid pages.
Changelog — this panel, accessible from the avatar menu.
v0.1.x Detail panel rework
Media tab — dedicated tab for screenshots, box art, and other game media.
Removed Personal tab — status, rating, and difficulty moved out of their own tab and into always-visible action buttons in the detail panel header, matching RomM's own UI pattern.
Metadata tab consolidation — renamed and expanded to house filename, file size, revision, CRC/MD5/SHA1 hashes, verification badges, and deep-link buttons to every metadata source (IGDB, MobyGames, ScreenScraper, RetroAchievements, SteamGridDB, LaunchBox, HowLongToBeat).
Version selector — when multiple ROM files share the same title, a dropdown in the detail header lets you switch between versions without leaving the panel.
Achievement filters — filter bar on the Achievements tab for All / Progression / Missable / Win Condition, plus an earned/locked toggle, with point totals per filter.
HLTB times — How Long to Beat main story, completionist, and extra times shown on the Overview tab when available.
Screenshot gallery & lightbox — screenshots in the Overview tab open a full-screen lightbox with previous/next navigation.
v0.1 Initial mockup
Dashboard — Recently Added and Continue Playing sections as horizontal scroll rows, each with cover art cards and a hover overlay (play, download, favorite, add to collection, more menu).
Widget bar — five configurable widgets: RetroAchievements Score (hardcore/softcore/both mode), Achievement of the Week, Random Pick (with reroll), Library Snapshot (game count, platform count, favorites), and Recently Unlocked achievements.
Widget configuration panel — toggle each widget on/off individually and adjust display options from the UI settings tab.
Game detail panel — slide-in panel with cover art, title, platform, year, tags, genres, companies, franchises, collections, summary, and user-editable status / rating / difficulty.
Notes tab — expandable note cards with public/private badges; inline form to add new notes without leaving the panel.
RetroAchievements integration — per-game achievement list with badge art, title, description, point value, and type badge; user progress (earned count, points, completion %) fetched live.
Platform browser — platform list with icons, filterable by letter; selecting a platform shows a full game grid with a platform info panel (icon, name, category/family/generation tags, game/rom counts).
Collections browser — collection list; selecting one shows its games in the same alphabetical grid layout.
Favorites tab — dedicated view of favorited games with alphabetical grouping and a scroll-to-letter strip.
Add to Collection picker — modal that lets you add a game to an existing collection or create a new one inline.
Search — full-library search overlay (Ctrl+K) that indexes all games and platforms, with result count and keyboard navigation.
Context menu — right-click or ⋯ button on any card: Play, Download, Favorite/Unfavorite, Add to Collection.
Dynamic background — cover art crossfades into the page background on hover, with a two-layer A/B fade so transitions are smooth.
Mobile layout — bottom navigation bar replaces the side nav on small screens; card sizes and grid layouts adapt to the viewport.
User menu — avatar dropdown with links to Profile, User Interface, Library Management, Metadata Sources, API Tokens, Administration, Server Stats, Scan, Upload, and Patcher.
Upload ROMs
{{ selectedPlatform.display_name || selectedPlatform.name }}
Drop files here or browse
ROM files, archives, and disc images supported
{{ f.name }}
{{ fmtBytes(f.size) }}