I definitely recommend watching the full video above, as it’s a great way to hear directly from the people building it. But if you’re a little short on time, here’s a quick summary of what was covered:
Team Overview
First of all, we wanted to explain who’s working on the app and what their areas of expertise are.
Front End
The front end of the application is mostly the UI, what you see on the screen, and this work is done by the following two team members:
- LauSandy - Known as CaptainSandyPants on the site and LauSandy on Discord, is our Senior Product Designer. He’s responsible for the development of the app's design, including how it looks, feels, and flows. His focus is on design and user experience, including layout, colour scheme, user journeys, and ensuring a cohesive view of the app and thought process that goes into interacting with an application.
- insomnious - Implements the designs created by LauSandy in code, building interactive UI elements and refining how the app reacts to user actions. You can view a speed run video of him working on the 'Restore Points' UI.
Recently, they’ve been focused on refining the look and feel of the app. If you’ve used the app before, you might have noticed that a lot of the dead space between controls has been removed, colours have been standardised, and style classes have been introduced around controls.
Application Logic
This part of the team handles everything that happens in the back end of the app, what happens when you click a button or load a mod list. This is being worked on by our four developers:
Right now, they’re working on standardising how controls are displayed across the app. Almost everywhere you click uses something called a tree data grid, which, as Halgari explains in the video, shows your mods in a parent/child structure in the UI. These are quite complex, and the UI toolkit being used is relatively new and not very refined. That’s meant the team has had to spend a lot of time adapting our data to work with these kinds of data grids.
Erri120, in particular, developed a method that allows the team to, for example, define a column that displays dates, and hook that up in just a few lines of code. Before, this would have required re-implementing a control for every single page in the app.
Halgari has been working on a global Undo feature, which allows users to roll back almost any change made in the UI.
Other highlights include:
- Mod updates: Sewer56 has been working on improvements to downloading and installing mod updates directly through the app.
- Baldur’s Gate 3 support: Work has resumed on supporting BG3, especially around load order and file conflict handling.
- Collections: Some early builds now allow users to create collections directly in the app, with further UI development ongoing.
Back End
As Halgari mentioned, there are three parts to the team, with the very back end being an area he’s focused on heavily over the past year. He’s written a database for the app called MnemonicDB. For the most part, it’s a single-process clone of Datomic. MnemonicDB is an open-source temporal tuple store, which essentially means it stores individual bits of data in a single row, and, because it’s temporal, it remembers all previous states even after changes. That’s what makes the Undo feature possible.
He’s also been working on making the app more reactive. For example, if you download a collection, the idea is that the app should automatically display the number of mods downloaded from it in real time. That’s a big job, so to support it, the team has written a library called Cascade, which is currently being integrated into the app.
What’s Next?
- Collection curation
- Baldur’s Gate 3 support
- Mod updates
We hope you find this new series interesting, and we'll bring you a new update next month!
4 comments
Vortexthe app", like files generated into the game directory?i.e. Have the mod file extracted to a specific folder.
For Monster Hunter World, the usual mods are extracted to nativePC folder, but if you are currently playing with ICE mod the path changes. MHW doesn't need a mod manager, but I have to resort to using a notepad to keep track of which mods I have currently installed.
I'm imagining this feature to be a barebones ability to simply keep track of the mods (and update them).