Version 0.7.0 is a feature-focused release for GameStacker.
While previous updates laid a lot of groundwork behind the scenes, this one is about how you actually interact with your library day to day. Organizing games, navigating large collections, switching between input methods, and generally making the UI feel more responsive and flexible were the main priorities.
📚 Better Library Control
Managing large libraries is one of the most common pain points we hear about, and 0.7 makes a big step forward here.
Stacks & Smart Stacks
Stacks let you group games however you like. You can create stacks manually, add games to multiple stacks, rename them, or delete them entirely. Think of them as flexible collections that work the way you want, not a fixed categorization system.
On top of that, Smart Stacks let GameStacker do the work for you. By defining a set of filters, GameStacker automatically groups matching games into a stack. You still have full control, and can manually add or remove games if you want to override the filters.
With this update, every category shown on the home page is now a Stack. That means you can rename built-in stacks, change their filters, or remove them completely. Nothing is locked in.

Letter Navigation Mode
Navigating large lists is now significantly faster.
When browsing games, holding left or right on the D-Pad activates letter navigation mode, jumping between letters instead of moving one game at a time. LB and RB behave similarly, but move through letters much faster, which is useful when jumping across very large libraries.
This makes scrolling through hundreds or thousands of games much more manageable.

🔍 Search
You can search your library from multiple places by pressing Y on the Home Page, Game Library Page, or any games list. When searching from within a stack, results are limited to that stack only, making it easier to narrow things down.

🎮 Steam Shortcuts Support
Games added to Steam as shortcuts are now supported.
This includes games added manually, as well as titles added through tools like Steam ROM Manager or EmuDeck. These games now show up in GameStacker just like any other integration.
GameStacker will attempt to match Steam collection names to known systems, allowing games from different integrations to be grouped correctly and achievements to show up as expected.
🕹️ Major Input Improvements
Input handling has been reworked to better support switching between keyboards and controllers.
Button Prompts & Layout Detection
GameStacker now includes proper keyboard button prompts and can automatically switch layouts based on your last input method.
When you press a key on a compatible controller, GameStacker switches to controller prompts automatically. Pressing a key on your keyboard brings up the keyboard layout again. This behavior is enabled by default, but you can force a specific layout in the settings if you prefer.
Guide Button Remapping
You can now choose which controller buttons trigger the Guide.
This includes using the default Guide button on your controller or configuring a custom controller button combination. This is especially useful if your controller’s Guide button already triggers something else, such as the Steam Overlay.
At this time, this setting only applies to controllers. The default keyboard Guide key (Home) cannot be remapped yet.

On-Screen Keyboard Rework
The on-screen keyboard has been fully reworked to better match modern interfaces. It now mirrors real keyboard layouts more closely and supports 29 different layouts, including RTL ones.
Text input is also smarter. When using a physical keyboard, the virtual keyboard is hidden automatically so you can type normally. Switching back to a gamepad brings it back instantly.

Keyboard Navigation Improvements
Keyboard navigation is now more intuitive and consistent with common desktop UIs. Enter selects items, and Esc goes back or cancels actions. Combined with the new button prompts, keyboard usage should feel much more natural overall.
🔌 Content Sources Management
You can now control which content sources GameStacker pulls games from.
Integrations like Steam can be disabled entirely if you don’t want GameStacker to import from them. If an integration isn’t detected automatically, you can also manually configure it so GameStacker knows how to import your games.
This gives you more control over how your library is built and maintained.

🎨 UI Updates & Visual Changes
This release includes a number of UI changes aimed at improving consistency and visual clarity.
Battery Percentage Indicator
On battery-powered devices, you can now enable a battery percentage indicator so you know exactly how much charge you have left.
Homepage & Guide Updates
The home page has been cleaned up visually, including changes to gradients and the removal of the floor element. Custom wallpapers are still supported, so you can keep the old look if you prefer.
The Guide has also been updated with rounded corners, clearer tab navigation prompts, a battery indicator, and album art from your system media player. Album art is no longer limited to media played inside GameStacker.

Dynamic Backgrounds
When browsing games, GameStacker now uses the game’s artwork as the background by default. This makes the interface feel more dynamic and helps each game bring its own mood to the UI.
This can be toggled under Profile Settings > Appearance > Background > Dynamic Background.

📝 Log File for Troubleshooting
GameStacker now writes logs to a logs/lastrun.log file inside the GameStacker data directory.
On Windows, you’ll typically find it at:
C:\Users\<Your User>\GameStacker\logs
On Linux:
/home/<Your User>/GameStacker/logs
The file is reset on every startup and provides useful context when troubleshooting issues. If you’re running into problems, you can now send this file along when reporting bugs.
🙏 A Huge Thank You to Our Patrons
GameStacker's development is driven by our community, and we literally couldn't do this without the support of our Patrons. Your feedback and backing are what turn these ideas into reality. Thank you for being a part of this journey!
0.7.0 focuses on making everyday use smoother, especially for larger libraries and mixed input setups. More refinements and features are already in progress, and we’ll keep iterating from here.