20 Commits

Author SHA1 Message Date
Georges-Antoine Assi
522df9d31a
feat: add libretro thumbnails as an artwork source
Adds the libretro thumbnail repository as a first-class artwork source so
region-correct box art (PAL/Europe, Japan, etc.) can be matched directly
to ROM filenames, addressing rommapp/romm#3239.

Implementation follows the SGDB handler pattern (artwork-only, no game
metadata): MetadataSource enum entry, scan-time fetch wired into the
SCAN_ARTWORK_PRIORITY loop, /search/roms integration, MatchRom dialog
chip + cover selection, and a heartbeat flag.

Matching is exact case-insensitive against the directory listing first
(so a ROM named "(Europe)" lands on the (Europe) artwork), with a
JaroWinkler fuzzy fallback at 0.8 that strips parenthetical tags from
both sides. Listings are cached in Redis with a 24h TTL.

`libretro_id` is persisted on the Rom model as the SHA1 hex of the
matched libretro filename — stable across scans, distinct per region,
indexed for lookup. Migration 0077 adds the column.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 22:57:20 -04:00
Georges-Antoine Assi
3575783769
Merge branch 'master' into romm-821 2025-10-21 21:46:23 -04:00
Georges-Antoine Assi
a50a2373bc
add and update tests 2025-10-20 21:53:41 -04:00
Georges-Antoine Assi
3cfc52234a
start work on gamelist.xml extraction 2025-10-16 23:16:39 -04:00
Georges-Antoine Assi
123b3f6b8b
create makeshift howlongtobeet handler 2025-09-14 19:39:38 -04:00
Georges-Antoine Assi
bf0d864d84
Add flashpoint as a metadata handler 2025-08-27 11:04:13 -04:00
Georges-Antoine Assi
be5678da08
setup platforms for tgdb 2025-06-17 17:04:14 -04:00
Georges-Antoine Assi
2b1297bd1a
playmatch only runs under IGDB 2025-06-16 14:28:19 -04:00
Georges-Antoine Assi
88130a60f8
First batch of work for hasheous 2025-06-15 21:52:36 -04:00
Georges-Antoine Assi
c46d81bba5
Merge branch 'master' into feature/add-playmatch-integration 2025-06-15 12:56:12 -04:00
DevYukine
fe78c1c1ce feat(hash): add basic playmatch hash matching 2025-06-05 02:15:07 +02:00
Georges-Antoine Assi
eb37ac0ef2
start mapping platforms slugs to lb platforms 2025-05-20 16:08:14 -04:00
zurdi
716dd023c0
added ra_id for platforms and roms 2025-04-11 13:12:38 +00:00
zurdi
30a0be2c4c
Merge branch 'master' into HEAD 2025-04-10 22:56:55 +00:00
zurdi
cfbcd82547
fix: changes based on review 2025-02-17 11:10:24 +00:00
zurdi
4aa2d49221
feat: fully integrated screenscrapper 2025-01-03 03:08:02 +00:00
zurdi
63fac78743
screenscraper API test 2024-10-25 01:05:58 +00:00
SaraVieira
11b46494a7
start work on retro achievements 2024-08-31 19:09:20 +01:00
Georges-Antoine Assi
dc33054ba1
more name refactoring 2024-05-05 16:45:58 -04:00
Georges-Antoine Assi
9ad28f3294
more refactoring again 2024-05-05 16:32:40 -04:00