All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.7.40 (2025-10-08)
- Notification center (2c66e1f)
0.7.40 (2025-10-08)
- Notification center (2c66e1f)
0.7.40 (2025-10-08)
- Notification center (2c66e1f)
0.7.39 - 2025-09-30
-
installation manager (#406)
Game installations are now shown in the new installation dashboard, in addition other relevant locations like the library side bar etc. The dashboard allows you to view the status of and manage installs in the following ways:
- Cancel installations
- Immediately install a queued installation, pausing the currently active one
- See installation speed and progress at a glance for all installations
- See recently installed games
Screenshots
0.7.38 - 2025-09-20
-
file dialogs on game details page (#407)
The rename and delete file modal dialogs now work as expected.
fixes #347
0.7.37 - 2025-09-12
- standalone toggle no longer hangs
- notification UI tweaks (#401)
0.7.36 - 2025-09-05
-
(Docker) graceful shutdown of server and DB
fixes #396
0.7.35 - 2025-08-31
-
embedded DB failing to start
More cases in which the embedded DB server failed to start have been addressed. Specifically, if the server is not gracefully shutdown Retrom will now attempt to clean up the environment when it is next brought back up which should address many of these failures.
fixes #391
-
(docker) Redirect root path to
/webWhen navigating to your Retrom server in the browser, the root path (e.g.
localhost:5101/orretrom.my-website.com/) will now redirect to the web client at/web(e.g.localhost:5101/weborretrom.my-website.com/web).
0.7.34 - 2025-08-31
-
Full screen mode no longer crashing
Full screen mode was crashing when game entries had names that started with a period. This is now fixed.
-
embedded DB
The optional embedded DB was occasionally non-functional in the docker image, this should no longer be the case.
0.7.33 - 2025-08-24
-
cache metadata images on server
Retrom now caches all remote image files on the server, and the client will fetch those copies instead of accessing the external URLs they were sourced from.
If a file is not currently cached, the client will still use the upstream URL -- but the file will be cached for next time.
fixes #366
0.7.32 - 2025-08-10
-
download game button
The download game button now uses the correct download URL.
fixes #377
-
download game from drop-down
There is now a drop-down option to download a game on its details page.
fixes #377
0.7.31 - 2025-08-03
-
improved server connect experience
The server connection dialog will now tell you if you are attempting to use a malformed URL (e.g. not including "http://"), hopefully reducing confusion when connections fail.
resolves #313
0.7.30 - 2025-07-27
-
serve web client directly from service (#356)
The web client is now served directly by the main Retrom service. This means that the web client can now be accessed under the same port that the service listens on. This also sets the Retrom service up for distribution methods other than docker. Keep your eyes open for native binaries for Windows / MacOS / Linux in the future!
0.7.29 - 2025-07-14
-
mapping gamepad sticks
Gamepad sticks are now mappable in web-based emulation
resolves #338
-
stop overwriting OS of builtin emulators
0.7.28 - 2025-06-30
-
opt-in installation of games in standalone mode
You can now configure standalone mode to require 'installing' games as if they were hosted on a dedicated Retrom server. This is useful in cases where you are running standalone mode but accessing a library from a network drive. Installing in such cases ensures you have a truly local copy of your installed games.
This also fixes a bug where in some cases standalone mode was unconditionally requiring installation of games.
0.7.27 - 2025-06-23
-
initial switch gamepad mapping
Initial support for the following switch gamepads and their respective default mappings have been added:
Switch Pro Controller, Switch JoyCons, Switch N64 Controller
resolves #330
0.7.26 - 2025-06-22
-
default menu button binding
The default gamepad button for opening Retrom menus is now mapped to the home (xbox/playstation) button rather than what is usually considered the start button. This removes the collision w/ in-game usage of the start button in-game.
partially resolves #330
-
init application performance metrics (#307)
Retrom now has optional, opt-in anonymous telemetry to help with identifying and improving performance issues in both the server and the client. Nothing is sent by default, you must explicitly enable this collection -- if you would like to help Retrom improve then please consider enabling this feature!
0.7.25 - 2025-06-17
-
steam playtime now updated in metadata jobs
-
server config tab not saving
fixes #326
-
content directory management
fixes #324
0.7.24 - 2025-06-15
-
auto-updater
There were certain cases in which the auto-updater was failing to find new updates, this has been resolved.
Additionally, macOS releases are now able to leverage the auto-updater -- no longer requiring macOS clients to be manually updated via downloading the new release.
0.7.23 - 2025-06-15
-
'play with' drop down shows all valid emulators
-
in-game overlay menu open button now works
-
disclaimer no longer re-renders
0.7.22 - 2025-06-15
-
initial emulatorJS and cloud save support
It's happening! Built-in, browser-based emulation is now possible in Retrom via EmulatorJS. Configure the newly added built-in emulators to support the platforms in your library and simply click the play button!
The following features are coming with this initial release:
- In-browser emulation (of course!)
- Managed, cloud save files for supported emulators/cores
- Managed, cloud save states for supported emulators/cores
- Configurable, automated backups of both cloud save files and save states
- In-game overlay, for easy configuration of the emulation experience and control schemes (gamepads too!)
- Import/export your save files and save states straight from the in-game overlay
EmulatorJS-based emulation is still considered experimental, so you may encounter bugs -- please file an issue on GitHub or reach out via Discord if you have any issues or questions!
0.7.21 - 2025-05-03
-
sort fullscreen games alphabetically
-
fetch default profile for new emulators
When a new emulator is created, its default profile will now be present in the profile list immediately.
fixes #286
-
scroll by character in fullscreen mode
You can now use the list of characters on the left of alphabetically sorted game lists in fullscreen mode to scroll to games starting with that character. This is useful for large libraries that are hard to navigate in fullscreen mode.
0.7.20 - 2025-04-28
- menubar spacing
0.7.19 - 2025-04-28
-
fullscreen mode on AppImage installations (#297)
Using the Retrom AppImage on linux should no longer lead to crashes in fullscreen mode
-
Mobile responsive UI (#298)
Retrom's web client is now mobile responsive!
0.7.18 - 2025-04-07
-
changing of install directory
No longer fails due to installed Steam games not being in Retrom's installation directory (because why would they be?)
-
Cannot read 'invoke' errors
0.7.17 - 2025-04-04
-
web client
The web client was occasionally failing to build after recent changes to the docker image. This should no longer happen.
-
don't crash when steam not installed
0.7.16 - 2025-04-03
- macOS builds
0.7.15 - 2025-04-02
-
steam installation status in standalone mode
When using Retrom in standalone mode, your library will no longer show every Steam game as installed even when they are not.
-
(fullscreen) Installation progress
The Install button now correctly reports the installation progress in fullscreen mode again.
-
(client) add platform metadata edit dialog
-
confirm on server disconnect
0.7.14 - 2025-02-26
-
prioritize existing match in metadata update
When downloading metadata for your library w/ the overwrite option, existing matches will be preserved.
0.7.13 - 2025-02-23
-
clean library job
You can now trigger a "Clean Library" job which will prune your Retrom database of items with missing files/and or directories.
fixes #214
-
include screenshots in metadata
Game metadata will now include screenshots, in addition to the existing artworks and videos
-
opt-in overwriting in download metadata job
The download metadata job now defaults to downloading metadata only for entries with no existing metadata.
You can still optionally opt in to overwriting existing entries.
0.7.12 - 2025-02-18
-
various launcher behaviors
You can now launch game files not at the root of the game's directory.
Standalone mode no longer needs to 'install' games to launch them
-
don't launch directories as fallback
When launching a game w/ no default file set, the launcher will no longer consider directories when resolving a fallback file to launch
-
Custom library structures
You can now define custom library structures if the existing Single-File Game and Multi-File Game options are not flexible enough!
resolves #104
0.7.11 - 2025-02-11
-
UI tweaks
-
default profiles for newly added emulators
-
better default emulator visibility
The desktop client now lists the default emulator and profile, where applicable, under the play button.
Additionally, you can now launch a game in any valid emulator via the dropdown menu next to the play button. This is useful for games that may want to opt-out of the defaults.
0.7.10 - 2025-02-10
- relative path ignore patterns
0.7.9 - 2025-02-10
-
Ignore Patterns
You can now configure Retrom to ignore certain files and directories that match a given pattern or set of patterns, using regular expressions. This can be done in the
File > Server > Content Directoriesmenu -- read more about this in the docs
0.7.8 - 2025-02-09
-
memory usage in extra metadata job
-
service logs
0.7.7 - 2025-02-03
- (docker) npm permission issues
- UI tweaks
0.7.6 - 2025-02-02
-
(docker) corepack keyid error
Fixes #250
- connectivity indicator
0.7.5 - 2025-02-01
- open installation directory menu item
-
change installation directory
You can now change Retrom's installation directory via the
File > Configurationmenu in theClienttab
0.7.4 - 2025-02-01
-
open installation directories from client
The client now has a menu item under
File > Locationsthat will open the global Retrom installation directory.There is also now an option to open an installed game's installation directory in the dropdown menu on the game's page.
0.7.3 - 2025-01-27
- large library jobs no longer block client
0.7.2 - 2025-01-26
- ignore missing steam dir
0.7.1 - 2025-01-25
-
hide empty third party libraries
Empty third party libraries, such as Steam, will now be hidden in the side-bar.
-
persist web client config
The web client will now properly save changes to the client configuration.
0.7.0 - 2025-01-22
-
(docker) create DB dir
The directory for the embedded database in the retrom Docker container has changed from
/app/datato/app/data/db.For those using the embedded DB ( i.e. not using an external PostgreSQL DB ), you may notice that your data is missing. Follow the migration guide in order to retain your existing data
-
manual metadata edit
The manual metadata edit modal now properly updates the game metadata with valid changes.
fixes #230
-
display empty platform entries
-
default to filename in IGDB search
fixes #231
-
(file-explorer) allow navigating to root
The file explorer will now allow you to navigate to the root directory
-
delete platform entries
You can now delete platform entries from the client
resolves #101
0.6.0 - 2025-01-16
-
(docker) root-less docker container
The docker container now runs under the
retromuser again.
0.5.4 - 2025-01-16
- (docker) better default permissions
0.5.2 - 2025-01-15
-
create config directory if needed
On certain OSs, the app's config directory needs to be manually created. Retrom will no longer crash on startup on these systems.
0.5.1 - 2025-01-14
-
config and embedded db fixes
-
web UI not loading
0.5.0 - 2025-01-14
- don't resize window on web
-
[breaking] standalone support
The Retrom service can now be run with its own internal database, rather than relying on an external one.
-
Configure libraries from the client
You can now modify your library configurations, such as folder location and structure, directly from the client.
This means that just about the entire server config can be managed from the client now. No more manually mucking around with
jsonfiles on the server! -
Standalone mode
Retrom can now spin up and manage its own server locally via standalone mode. No more complicated server installation needed!
0.4.10 - 2024-12-28
- UI tweaks
-
persist window size and position
Retrom will now remember window state when closed and re-opened.
resolves #145
0.4.9 - 2024-12-24
-
make steam config optional
The update library job will no longer error when the optional steam config is not specified.
0.4.8 - 2024-12-15
-
IPC communications
An upstream dependency used to (de)serialize JSON between various layers of Retrom introduced a regression that broke certain functionalities. As a consequence of this, the server config file now uses camelCase as is standard for JSON. Existing configs will continue to work.
0.4.7 - 2024-12-13
- UI Tweaks
-
config panel
You can now configure certain server and client settings from the File > Config menu item.
0.4.6 - 2024-12-01
-
Fullscreen action button
The Play/Install/Download button in the fullscreen layout now correctly responds to gamepad input.
-
link rendering in changelog
-
steam integration
You can now opt-in to populate your library with your Steam games. This is done by adding your Steam config to the service config file.
-
scanned games are matched by platform
Library scans will now take a games platform into account when matching via IGDB.
-
prioritize exact matches in IGDB search by default
fixes #168
-
Fullscreen game list names
Fullscreen mode now shows the names of the games in the grid view, where applicable.
0.4.5 - 2024-11-22
-
don't show empty platforms in fullscreen mode
resolves #182
-
EGL Bad Parameter error on some devices
0.4.4 - 2024-11-19
-
better handle certain networking configs
Networking configurations that do not support the GRPC protocol are now supported.
0.4.3 - 2024-11-19
-
UI Tweaks
Fullscreen mode menus now work properly on smaller screen sizes. Navigation via gamepad/hotkeys in fullscreen mode is now more intuitive. Fullscreen mode now sorts platforms alphabetically.
0.4.2 - 2024-11-17
- auto-updating
-
announcement system
Retrom now has an announcement system that can be used to display important messages without requiring a new release. This is useful for getting notified about breakages in current versions or new features that are available.
-
fullscreen game page overhaul
The game page in fullscreen mode was unfortunately prone to bugs and inconsistencies on various screen sizes. This overhaul cleans up the UI to make it more compatible with different screen sizes and resolutions, and to make it more intuitive to use.
0.4.1 - 2024-11-13
-
home screen scrolling to bottom
The home screen no longer scrolls to the bottom of the page on initial load.
0.4.0 - 2024-11-11
-
initial gamepad support
Retrom now supports most Xbox and PlayStation controllers
-
[breaking] fullscreen mode (#173)
Fullscreen mode now available in the
Viewmenu item
0.3.3 - 2024-11-08
-
indicate installation status in side bar
Installed games are now highlighted in the side bar. They are also grouped together at the top of the list with an option to opt-out of this behavior.
0.3.2 - 2024-10-26
- MultiFileGame installations
0.3.1 - 2024-10-24
-
sub-directories in game files
Any sub-directories in a MultiFileGame's directory is now properly scanned and added to the game's file list. Installing such games from the desktop client now works as expected, as does downloading them from the web client.
-
UI Tweaks
Updated changlog to look more prettier
-
allow deleted games to be re-imported
Now when deleting a game, blacklisting it from future library scans is optional. This is useful for games that have malformed data and need to be reset completely.
0.3.0 - 2024-10-21
-
[breaking] shared emulator profiles
Emulators are no longer scoped to a single client. Any per-client configuration is now distinct from the emulators -- and, by extension, their profiles -- themselves. This means that profiles can now be used across clients!
0.2.8 - 2024-10-21
-
install_dirmacro for custom argsNow you can use the
install_dirmacro in your profile's custom args to specify the installation directory for the game. This will allow you launch multi-file games with emulators that require a directory of files ( e.g. RPCS3 ).
0.2.7 - 2024-10-17
-
installed games filenames
Installing games now properly omit's any quotes that wrap the filename, fixing the issue where games could not be installed on windows.
Additionally, filenames now no longer strip the file extension.
0.2.6 - 2024-10-17
-
creating log file
Retrom now checks to make sure the log directory exists before trying to create a log file. It also places the log file in the OS-specific idiomatic location for log files.
0.2.5 - 2024-10-17
- client log file
0.2.4 - 2024-10-15
-
(Web Client) Fix downloading games w/ commas in name
Downloading games with commas in the file name now works as expected, rather than failing with a
Multiple Content-Dispositionerror.
0.2.3 - 2024-10-13
-
emulator save strategy dropdown
The dropdown will now properly reset the rendered value when an emulator is added.
-
(client) indent changelog bodies
0.2.2 - 2024-10-13
-
(client) render new version number correctly
The new version number in the update modal will now be rendered correctly, rather than render
[object Object].
0.2.1 - 2024-10-11
- (service) better error logs
- (web client) use service port defined in config file
0.2.0 - 2024-10-10
- per-client default emulator profiles
- default profiles modal UI tweaks
0.1.13 - 2024-10-01
- version modals added to menubar
- UI tweaks
- semantics of manual metadata update modal
0.1.12 - 2024-09-30
- UI tweaks
- sort by time played + sort fixes
- (web client) download button
0.1.10 - 2024-09-27
- web client bundled with service docker image (#134)
0.1.9 - 2024-09-27
- game name rendering
0.1.8 - 2024-09-27
- restore legacy content dir + fix config loading
0.1.7 - 2024-09-26
- (client) opt-out of platform filtering in IGDB searching
- (service) no longer relies on default config file
- (client) render single-file game names with dots
- (client) render multi-file game names with dots
0.1.6 - 2024-09-26
- game details UI tweaks
- idle job text is correct color
0.1.5 - 2024-09-26
- extra metadata job
0.1.4 - 2024-09-25
- external links
- better similar games searching
0.1.3 - 2024-09-24
- sidebar tooltips no longer block cursor
0.1.2 - 2024-09-24
- fallback to deprecated CONTENT_DIR envvar
- sidebar sorting
0.1.1 - 2024-09-24
- search and sort sidebar entries
0.1.0 - 2024-09-22
- [breaking] allow single file lib structure
0.0.81 - 2024-09-22
- warn on breaking changes
0.0.80 - 2024-09-18
- custom arg parsing
- emulator profile modal width
0.0.79 - 2024-09-16
- match games by igdb ID
0.0.78 - 2024-09-15
- tls in launcher plugin
0.0.77 - 2024-09-13
- emulator modal file picker
0.0.76 - 2024-09-13
- static link libpq
0.0.75 - 2024-09-13
- doc links + UI tweaks
0.0.74 - 2024-09-11
- 64-bit nums
0.0.73 - 2024-09-11
- macOS entitlements for notarization
0.0.72 - 2024-09-08
- macOS build signing
0.0.71 - 2024-09-08
- refresh data on metadata job done
0.0.70 - 2024-09-05
- modal refactor
0.0.69 - 2024-09-05
- sync config on desktop app
0.0.65 - 2024-09-04
- updating -> relaunching
0.0.64 - 2024-09-04
- (macOS) app identifier
0.0.63 - 2024-09-04
- no more node server
0.0.62 - 2024-09-03
- nothing

