Skip to content

Releases: rommapp/romm

4.7.0-beta.2

21 Feb 18:15
cccee5a

Choose a tag to compare

4.7.0-beta.2 Pre-release
Pre-release

Highlights

Auto-export gamelist.xml

Automatically generate an ES-DE compatible gamelist.xml file during scans by enabling the option in your config.yml. This will place the new gamelist.xml file within the platform folder for selected/discovered platforms.

scan:
    export_gamelist: true

@ItzCobaltboy in #2987

Device-based save synchronization

Thanks to @tmgast, we've laid the ground work for device-based save synchronization to enable multi-device save management, as defined in RFC-0001. Devices (handhelds, PCs, etc.) can register with the server and track which saves they've synced, enabling conflict detection when a device tries to upload stale data.

Note that this is purely foundational work to set up an initial structure and API implementation and in intended for third-party developers. #2917

Minor changes

  • Add support for ScummVM shortnames by @gantoine in #2957
  • Add OIDC_AUTOLOGIN=true env var to automatically login using OIDC by @pR0Ps in #2969
  • Group games with same name (but different tags) as versions/siblings by @zeroSteiner in #2984
  • Search by mutliple keywords with | by @gantoine in #2996
    • zelda|mario|sonic would show all games with zelda, mario OR sonic in the name
  • New PKGJ feed endpoints in .tsv format by @gantoine in #2986
    • PSP games: GET /api/feeds/pkgj/psp/games
    • PSP DLC files: GET /api/feeds/pkgj/psp/dlc
    • PS Vita games: GET /api/feeds/pkgj/psvita/games
    • PS Vita DLC files: GET /api/feeds/pkgj/psvita/dlc
    • PSX games: GET /api/feeds/pkgj/psx/games

Fixes

  • [HOTFIX] Fix all roms displayed in all platforms by @gantoine in #2948
  • [ROMM-2956] Fix refresh on card edit by @gantoine in #2962
  • Invalid category values fix by @LoneAngelFayt in #2979
  • Filter keys now plural by @camhorn in #2982
  • [ROMM-2991] Allow set completion to 0 by @gantoine in #2995
  • [ROMM-2997] Fix HLTB search term fetching by @gantoine in #2998
  • [ROMM-2983] Fix negative filter by verified by @gantoine in #3000
  • [ROMM-2976] Fix no games displayed for status filter by @gantoine in #3001
  • [ROMM-2974] Stop displaying public collections in "add to collection" dialog the user doesn't own by @gantoine in #3002
  • [ROMM-2972] Fix /props returning stale data by @gantoine in #3003
  • [ROMM-2965] Check file count for file select menu emulatorjs by @gantoine in #3005
  • [ROMM-2943] Match scanned platform based on fs_slug by @gantoine in #3008
  • [ROMM-3020] Fix split collection custom artowrk by @gantoine in #3028
  • [ROMM-3025] Fix collections with custom art failing by @gantoine in #3027
  • [ROMM-3026] Region/language shortcodes should be case sensitive by @gantoine in #3035
  • [ROMM-3031] Fix screenshot property on save/state by @gantoine in #3037

Other changes

New Contributors

Full Changelog: 4.6.1...4.7.0-beta.2

4.7.0-beta.1

21 Feb 15:20
1dfce1c

Choose a tag to compare

4.7.0-beta.1 Pre-release
Pre-release

Highlights

Auto-export gamelist.xml

Automatically generate an ES-DE compatible gamelist.xml file during scans by enabling the option in your config.yml. This will place the new gamelist.xml file within the platform folder for selected/discovered platforms.

scan:
    export_gamelist: true

@ItzCobaltboy in #2987

Device-based save synchronization

Thanks to @tmgast, we've laid the ground work for device-based save synchronization to enable multi-device save management, as defined in RFC-0001. Devices (handhelds, PCs, etc.) can register with the server and track which saves they've synced, enabling conflict detection when a device tries to upload stale data.

Note that this is purely foundational work to set up an initial structure and API implementation and in intended for third-party developers. #2917

Minor changes

  • Add support for ScummVM shortnames by @gantoine in #2957
  • Add OIDC_AUTOLOGIN=true env var to automatically login using OIDC by @pR0Ps in #2969
  • Group games with same name (but different tags) as versions/siblings by @zeroSteiner in #2984
  • Search by mutliple keywords with | by @gantoine in #2996
    • zelda|mario|sonic would show all games with zelda, mario OR sonic in the name
  • New PKGJ feed endpoints in .tsv format by @gantoine in #2986
    • PSP games: GET /api/feeds/pkgj/psp/games
    • PSP DLC files: GET /api/feeds/pkgj/psp/dlc
    • PS Vita games: GET /api/feeds/pkgj/psvita/games
    • PS Vita DLC files: GET /api/feeds/pkgj/psvita/dlc
    • PSX games: GET /api/feeds/pkgj/psx/games

Fixes

  • [HOTFIX] Fix all roms displayed in all platforms by @gantoine in #2948
  • [ROMM-2956] Fix refresh on card edit by @gantoine in #2962
  • Invalid category values fix by @LoneAngelFayt in #2979
  • Filter keys now plural by @camhorn in #2982
  • [ROMM-2991] Allow set completion to 0 by @gantoine in #2995
  • [ROMM-2997] Fix HLTB search term fetching by @gantoine in #2998
  • [ROMM-2983] Fix negative filter by verified by @gantoine in #3000
  • [ROMM-2976] Fix no games displayed for status filter by @gantoine in #3001
  • [ROMM-2974] Stop displaying public collections in "add to collection" dialog the user doesn't own by @gantoine in #3002
  • [ROMM-2972] Fix /props returning stale data by @gantoine in #3003
  • [ROMM-2965] Check file count for file select menu emulatorjs by @gantoine in #3005
  • [ROMM-2943] Match scanned platform based on fs_slug by @gantoine in #3008
  • [ROMM-3020] Fix split collection custom artowrk by @gantoine in #3028
  • [ROMM-3025] Fix collections with custom art failing by @gantoine in #3027
  • [ROMM-3026] Region/language shortcodes should be case sensitive by @gantoine in #3035
  • [ROMM-3031] Fix screenshot property on save/state by @gantoine in #3037

Other changes

New Contributors

Full Changelog: 4.6.1...4.7.0-beta.1

4.7.0-alpha.1

12 Feb 16:14
ee998eb

Choose a tag to compare

4.7.0-alpha.1 Pre-release
Pre-release

Note

API Changes

  • New endpoints that only return identifiers (IDs)
    • GET /api/collections/identifiers
    • GET /api/collections/virtual/identifiers
    • GET /api/collections/smart/identifiers
    • GET /api/firmware/identifiers
    • GET /api/platforms/identifiers
    • GET /api/roms/identifiers
    • GET /api/roms/{id}/notes/identifiers
    • GET /api/saves/identifiers
    • GET /api/states/identifiers
    • GET /api/users/identifiers
  • New endpoint for device registration
    • POST /api/devices/register_device
    • GET /api/devices
    • GET/PUT/DELETE /api/devices/{device_id}
  • New endpoints for save management
    • GET /api/saves/summary: Saves summary grouped by slot
    • GET /api/saves/{id}/content: Download save content
    • GET /api/saves/{id}/downloaded: Confirm download
    • POST /api/saves/{id}/untrack: Disable sync tracking for a save on a device
    • POST /api/saves/{id}/track: Re-enable sync tracking for a save on a device
    • GET /api/saves can be filtered by rom_id, platform_id, device_id or slot
  • New PKGJ feed endpoints in .tsv format
    • PSP games: GET /api/feeds/pkgj/psp/games
    • PSP DLC files: GET /api/feeds/pkgj/psp/dlc
    • PS Vita games: GET /api/feeds/pkgj/psvita/games
    • PS Vita DLC files: GET /api/feeds/pkgj/psvita/dlc
    • PSX games: GET /api/feeds/pkgj/psx/games
  • Collection.user__username -> Collection.owner_username ⚠️
  • SmartCollectionSchema.user__username -> SmartCollectionSchema.owner_username` ⚠️
  • RomUserSchema.user__username removed ⚠️
  • New field on /heartbeat response OIDC.AUTOLOGIN
  • RomFileCategory enum includes cheat value
  • New fields on SaveSchema and StateSchema objects
    • slot: string | null
    • content_hash: string | null
    • device_syncs: list[DeviceSyncSchema]

Highlights

Auto-export gamelist.xml

Automatically generate an ES-DE compatible gamelist.xml file during scans by enabling the option in your config.yml. This will place the new gamelist.xml file within the platform folder for selected/discovered platforms.

scan:
    export_gamelist: true

@ItzCobaltboy in #2987

Device-based save synchronization

Thanks to @tmgast, we've laid the ground work for device-based save synchronization to enable multi-device save management, as defined in RFC-0001. Devices (handhelds, PCs, etc.) can register with the server and track which saves they've synced, enabling conflict detection when a device tries to upload stale data.

Note that this is purely foundational work to set up an initial structure and API implementation and in intended for third-party developers. #2917

Minor changes

  • Add support for ScummVM shortnames by @gantoine in #2957
  • Add OIDC_AUTOLOGIN=true env var to automatically login using OIDC by @pR0Ps in #2969
  • Group games with same name (but different tags) as versions/siblings by @zeroSteiner in #2984
  • Search by mutliple keywords with | by @gantoine in #2996
    • zelda|mario|sonic would show all games with zelda, mario OR sonic in the name
  • New PKGJ feed endpoints in .tsv format by @gantoine in #2986
    • PSP games: GET /api/feeds/pkgj/psp/games
    • PSP DLC files: GET /api/feeds/pkgj/psp/dlc
    • PS Vita games: GET /api/feeds/pkgj/psvita/games
    • PS Vita DLC files: GET /api/feeds/pkgj/psvita/dlc
    • PSX games: GET /api/feeds/pkgj/psx/games

Fixes

Other changes

New Contributors

Full Changelog: 4.6.1...4.7.0-alpha.1

4.6.1

27 Jan 14:57
cd56d3a

Choose a tag to compare

What's Changed

Full Changelog: 4.6.0...4.6.1

4.6.0

26 Jan 22:34
443110f

Choose a tag to compare

Highlights

Additional metadata

The edit dialog now allows you to manually set metadata properties that would otherwise only be aggregated from metadata sources, if those metadata sources don't support/populate certain fields. #2848

Screenshot 2026-01-12 at 1 16 34 PM

Enhance folder structure config

We've improved the web interface that lets you configure platform bindings and versions, and excluded files and folders. This change should simplify the process of configuring how library folders are interpreted and what content is ignored during scanning. #2809

Screenshot 2026-01-12 at 12 25 11 PM Screenshot 2026-01-12 at 12 25 23 PM

Patcher.js

  • We're introducing a new ROM patching feature to the app that enables your admins and editors to apply various types of patches to ROM files. At this time both ROM and patch files must be downloaded locally and re-uploaded via the patcher, with future work planned to patch ROMs directly from your library. #2787
Screenshot 2026-01-12 at 12 25 37 PM

UI settings sync

UI settings are now synced between devices for every user! These settings do not affect third-party apps, and any setting must be changed at least once for this sync to take effect. #2777

BIOS file defaults

A default BIOS file can now be specified per emulator core directly in your config.yml:

emulatorjs:
  settings:
    mgba:
      bios_file: gba_bios.bin

#2873

Minor changes

Fixes

  • Fix YAML indentation in netplay section of config example file by @Zuko in #2812
  • [HOTFIX] Fix scrolling load more in gallery views by @gantoine in #2813
  • [HOTFIX] Multi roms should only consider top-level files by @gantoine in #2821
  • Notes flag by @zurdi15 in #2817
  • [ROMM-2824] Also replace - with : for edge cases in HLTB and LB handlers by @gantoine in #2827
  • [ROMM-2844] Use webp images for game covers in list view by @gantoine in #2845
  • [ROMM-2835] Fix appearance of chevron screenshot buttons by @gantoine in #2846
  • [ROMM-2833] Fix using default locales in igdb handler by @gantoine in #2847
  • [ROMM-2796] Add check to overwrite media assets by @gantoine in #2851
  • Allow deleting single chip in additional metadata by @SaraVieira in #2861
  • [ROMM-2853] Update rom_file.category column enum by @gantoine in #2860
  • [HOTFIX] Dont schedule tasks if already queued by @gantoine in #2885
  • [ROMM-2808] Stop filtering nsfw games from search results by @gantoine in #2852
  • [ROMM-2856] Use platform slug to fetch feed games by @gantoine in #2862
  • [HOTFIX] Check if gamelist metadata source selected before populating cache by @gantoine in #2865
  • [ROMM-2889] Add media to update_config_file by @gantoine in #2897
  • [HOTFIX] Rename selected_statuses to statuses by @gantoine in #2902
  • [HOTFIX] Only add ? to qs on download path by @gantoine in #2907
  • [ROMM-2874] Feature/updated-after-query-param by @BrandonKowalski in #2898
  • [ROMM-2906] Fix icon color light mode by @gantoine in #2913
  • [HOTFIX] Remove files from model_dump in scan by @gantoine in #2914
  • [ROMM-2891] Empty String Flashpoint ID by @BrandonKowalski in #2918

Other changes

New Contributors

Full Changelog: 4.5.0...4.6.0

4.6.0-beta.2

23 Jan 21:09
bbab9a3

Choose a tag to compare

4.6.0-beta.2 Pre-release
Pre-release

Highlights

Additional metadata

The edit dialog now allows you to manually set metadata properties that would otherwise only be aggregated from metadata sources, if those metadata sources don't support/populate certain fields. #2848

Screenshot 2026-01-12 at 1 16 34 PM

Enhance folder structure config

We've improved the web interface that lets you configure platform bindings and versions, and excluded files and folders. This change should simplify the process of configuring how library folders are interpreted and what content is ignored during scanning. #2809

Screenshot 2026-01-12 at 12 25 11 PM Screenshot 2026-01-12 at 12 25 23 PM

Patcher.js

  • We're introducing a new ROM patching feature to the app that enables your admins and editors to apply various types of patches to ROM files. At this time both ROM and patch files must be downloaded locally and re-uploaded via the patcher, with future work planned to patch ROMs directly from your library. #2787
Screenshot 2026-01-12 at 12 25 37 PM

UI settings sync

UI settings are now synced between devices for every user! These settings do not affect third-party apps, and any setting must be changed at least once for this sync to take effect. #2777

BIOS file defaults

A default BIOS file can now be specified per emulator core directly in your config.yml:

emulatorjs:
  settings:
    mgba:
      bios_file: gba_bios.bin

#2873

Minor changes

Fixes

  • Fix YAML indentation in netplay section of config example file by @Zuko in #2812
  • [HOTFIX] Fix scrolling load more in gallery views by @gantoine in #2813
  • [HOTFIX] Multi roms should only consider top-level files by @gantoine in #2821
  • Notes flag by @zurdi15 in #2817
  • [ROMM-2824] Also replace - with : for edge cases in HLTB and LB handlers by @gantoine in #2827
  • [ROMM-2844] Use webp images for game covers in list view by @gantoine in #2845
  • [ROMM-2835] Fix appearance of chevron screenshot buttons by @gantoine in #2846
  • [ROMM-2833] Fix using default locales in igdb handler by @gantoine in #2847
  • [ROMM-2796] Add check to overwrite media assets by @gantoine in #2851
  • Allow deleting single chip in additional metadata by @SaraVieira in #2861
  • [ROMM-2853] Update rom_file.category column enum by @gantoine in #2860
  • [HOTFIX] Dont schedule tasks if already queued by @gantoine in #2885
  • [ROMM-2808] Stop filtering nsfw games from search results by @gantoine in #2852
  • [ROMM-2856] Use platform slug to fetch feed games by @gantoine in #2862
  • [HOTFIX] Check if gamelist metadata source selected before populating cache by @gantoine in #2865
  • [ROMM-2889] Add media to update_config_file by @gantoine in #2897
  • [HOTFIX] Rename selected_statuses to statuses by @gantoine in #2902
  • [HOTFIX] Only add ? to qs on download path by @gantoine in #2907
  • [ROMM-2874] Feature/updated-after-query-param by @BrandonKowalski in #2898
  • [ROMM-2906] Fix icon color light mode by @gantoine in #2913
  • [HOTFIX] Remove files from model_dump in scan by @gantoine in #2914
  • [ROMM-2891] Empty String Flashpoint ID by @BrandonKowalski in #2918

Other changes

New Contributors

Full Changelog: 4.5.0...4.6.0-beta.2

4.6.0-beta.1

21 Jan 18:47
1602688

Choose a tag to compare

4.6.0-beta.1 Pre-release
Pre-release

Highlights

Additional metadata

The edit dialog now allows you to manually set metadata properties that would otherwise only be aggregated from metadata sources, if those metadata sources don't support/populate certain fields. #2848

Screenshot 2026-01-12 at 1 16 34 PM

Enhance folder structure config

We've improved the web interface that lets you configure platform bindings and versions, and excluded files and folders. This change should simplify the process of configuring how library folders are interpreted and what content is ignored during scanning. #2809

Screenshot 2026-01-12 at 12 25 11 PM Screenshot 2026-01-12 at 12 25 23 PM

Patcher.js

  • We're introducing a new ROM patching feature to the app that enables your admins and editors to apply various types of patches to ROM files. At this time both ROM and patch files must be downloaded locally and re-uploaded via the patcher, with future work planned to patch ROMs directly from your library. #2787
Screenshot 2026-01-12 at 12 25 37 PM

UI settings sync

UI settings are now synced between devices for every user! These settings do not affect third-party apps, and any setting must be changed at least once for this sync to take effect. #2777

BIOS file defaults

A default BIOS file can now be specified per emulator core directly in your config.yml:

emulatorjs:
  settings:
    mgba:
      bios_file: gba_bios.bin

#2873

Minor changes

Fixes

  • Fix YAML indentation in netplay section of config example file by @Zuko in #2812
  • [HOTFIX] Fix scrolling load more in gallery views by @gantoine in #2813
  • [HOTFIX] Multi roms should only consider top-level files by @gantoine in #2821
  • Notes flag by @zurdi15 in #2817
  • [ROMM-2824] Also replace - with : for edge cases in HLTB and LB handlers by @gantoine in #2827
  • [ROMM-2844] Use webp images for game covers in list view by @gantoine in #2845
  • [ROMM-2835] Fix appearance of chevron screenshot buttons by @gantoine in #2846
  • [ROMM-2833] Fix using default locales in igdb handler by @gantoine in #2847
  • [ROMM-2796] Add check to overwrite media assets by @gantoine in #2851
  • Allow deleting single chip in additional metadata by @SaraVieira in #2861
  • [ROMM-2853] Update rom_file.category column enum by @gantoine in #2860
  • [HOTFIX] Dont schedule tasks if already queued by @gantoine in #2885
  • [ROMM-2808] Stop filtering nsfw games from search results by @gantoine in #2852
  • [ROMM-2856] Use platform slug to fetch feed games by @gantoine in #2862
  • [HOTFIX] Check if gamelist metadata source selected before populating cache by @gantoine in #2865
  • [ROMM-2889] Add media to update_config_file by @gantoine in #2897
  • [HOTFIX] Rename selected_statuses to statuses by @gantoine in #2902
  • [HOTFIX] Only add ? to qs on download path by @gantoine in #2907
  • [ROMM-2874] Feature/updated-after-query-param by @BrandonKowalski in #2898
  • [ROMM-2906] Fix icon color light mode by @gantoine in #2913
  • [HOTFIX] Remove files from model_dump in scan by @gantoine in #2914
  • [ROMM-2891] Empty String Flashpoint ID by @BrandonKowalski in #2918

Other changes

New Contributors

Full Changelog: 4.5.0...4.6.0-alpha.2

4.6.0-alpha.4

19 Jan 17:04
f48cf10

Choose a tag to compare

4.6.0-alpha.4 Pre-release
Pre-release

What's Changed

Full Changelog: 4.6.0-alpha.3...4.6.0-alpha.4

4.6.0-alpha.3

18 Jan 16:25
9b64acc

Choose a tag to compare

4.6.0-alpha.3 Pre-release
Pre-release

What's Changed

Full Changelog: 4.6.0-alpha.2...4.6.0-alpha.3

4.6.0-alpha.2

17 Jan 22:45
a2f2249

Choose a tag to compare

4.6.0-alpha.2 Pre-release
Pre-release

Highlights

Additional metadata

The edit dialog now allows you to manually set metadata properties that would otherwise only be aggregated from metadata sources, if those metadata sources don't support/populate certain fields. #2848

Screenshot 2026-01-12 at 1 16 34 PM

Enhance folder structure config

We've improved the web interface that lets you configure platform bindings and versions, and excluded files and folders. This change should simplify the process of configuring how library folders are interpreted and what content is ignored during scanning. #2809

Screenshot 2026-01-12 at 12 25 11 PM Screenshot 2026-01-12 at 12 25 23 PM

Patcher.js

  • We're introducing a new ROM patching feature to the app that enables your admins and editors to apply various types of patches to ROM files. At this time both ROM and patch files must be downloaded locally and re-uploaded via the patcher, with future work planned to patch ROMs directly from your library. #2787
Screenshot 2026-01-12 at 12 25 37 PM

UI settings sync

UI settings are now synced between devices for every user! These settings do not affect third-party apps, and any setting must be changed at least once for this sync to take effect. #2777

BIOS file defaults

A default BIOS file can now be specified per emulator core directly in your config.yml:

emulatorjs:
  settings:
    mgba:
      bios_file: gba_bios.bin

#2873

Minor changes

Fixes

  • Fix YAML indentation in netplay section of config example file by @Zuko in #2812
  • [HOTFIX] Fix scrolling load more in gallery views by @gantoine in #2813
  • [HOTFIX] Multi roms should only consider top-level files by @gantoine in #2821
  • Notes flag by @zurdi15 in #2817
  • [ROMM-2824] Also replace - with : for edge cases in HLTB and LB handlers by @gantoine in #2827
  • [ROMM-2844] Use webp images for game covers in list view by @gantoine in #2845
  • [ROMM-2835] Fix appearance of chevron screenshot buttons by @gantoine in #2846
  • [ROMM-2833] Fix using default locales in igdb handler by @gantoine in #2847
  • [ROMM-2796] Add check to overwrite media assets by @gantoine in #2851
  • Allow deleting single chip in additional metadata by @SaraVieira in #2861
  • [ROMM-2853] Update rom_file.category column enum by @gantoine in #2860
  • [HOTFIX] Dont schedule tasks if already queued by @gantoine in #2885
  • [ROMM-2808] Stop filtering nsfw games from search results by @gantoine in #2852
  • [ROMM-2856] Use platform slug to fetch feed games by @gantoine in #2862
  • [HOTFIX] Check if gamelist metadata source selected before populating cache by @gantoine in #2865
  • [ROMM-2889] Add media to update_config_file by @gantoine in #2897
  • [HOTFIX] Rename selected_statuses to statuses by @gantoine in #2902
  • [HOTFIX] Only add ? to qs on download path by @gantoine in #2907
  • [ROMM-2874] Feature/updated-after-query-param by @BrandonKowalski in #2898
  • [ROMM-2906] Fix icon color light mode by @gantoine in #2913

Other changes

New Contributors

Full Changelog: 4.5.0...4.6.0-alpha.2