Hi everyone!
A massive release for NOMM this time!
Project restructure
While we work on NOMM, my fellow dev @Emetros and I learn a lot about different things we can do to better the project, some of them little things, and some of them big.
In this instance, we made some pretty significant changes to how the project is structured.
tl;dr we split the project into two distinct repos:
- The main nomm-app repo where all the code is
- The nomm-configurations repo where all the configurations are now stored
This allows us to handle NOMM configuration updates independently from NOMM updates.
Every time you launch NOMM (or launch a manual scan), it will now attempt to pull the latest configurations from our configuration repo, ensuring you always get the latest configurations from the community :)
Added a built-in configuration builder
- NOMM now comes with a built-in configuration builder which will let you, the user, easily build and use new configurations
- We also implemented a neat little game picker for the Steam platform that allows you to start with an already installed Steam game, with some fields pre-filled
- Feel free to check out the instructions on our new repo's readme to see how to submit the configurations you have built
Reworked first time setup
- The first time setup workflow has been enhanced once again!
- We added the ability to go with the default NOMM data folder instead of picking a download/staging folder.
- (Of course you can still pick your own folders)
- If you do decide to switch, NOMM will NOT move your existing downloads and staged mods to the new directory, you will have to do that yourself (it's a simple copy paste, if you need help with it, feel free to stop by our Discord)
Translations now have their own portal!
- Have you always wanted to have NOMM in your native language? Now you can!
- Simply head to our crowdin project, pick your language and start translating 😄
- This is reserved for native speakers only, please do not submit AI translations (if we wanted to translate with AI, we would do it ourselves)
A bunch of other backend stuff
- Fixed Gamebanana one click install support
- Linted the whole project and fixed 95% of the linting issues
- Added unit tests!
- Automated the release note management (this is something that will be useful for the Flathub release, so that when you update on Flathub you get some mini release notes)
List of PRs
- clean: updating outdated files by @Emetros in #121
- Semi automated releases by @Allexio in #116
- Actions: update actions to latest version by @Allexio in #122
- Testing framework + Github CI by @Emetros in #120
- Massive project structure change for better test isolation by @Allexio in #124
- Fix major regression concerning pathing issues by @Allexio in #126
- Great linting branch by @Allexio in #127
- Gamebanana support fix by @Allexio in #130
- Change: Move game configurations to a separate repo by @Allexio in #132
- Semi automated releases fix by @Allexio in #123
- Configuration builder by @Allexio in #133
- First time setup update by @Allexio in #134
- UI: Update first time setup nexus API key window by @Allexio in #135
Full Changelog: 0.12.6...0.13.0