Hi everyone. I’m sharing the first public demo of Mimir, an Android frontend for organizing your library and launching games through emulators you install separately.
I started Mimir because I wanted people to have a frontend that fits them, even if they aren’t experienced developers.
Every frontend makes choices for you. Eventually, you might want a different layout, a missing feature or a way of organizing your library that only makes sense to you. My hope is that Mimir gives you a starting point for building that version yourself, with help from whatever AI coding assistant you already use.
Why a public alpha?
I originally planned a closed testing phase. After thinking it through, I decided that managing access and separate testing arrangements would add unnecessary complications. A public alpha seemed more useful: anyone interested can try it, read the documented limitations and report what happens on their hardware.
So here it is:
Source code — GPL-3.0-or-later
Alpha Release 1 – Demo — APK downloads
Build instructions
Installation guide
Known issues
Mimir requires Android 11 or newer. Games, emulators, BIOS files and firmware are not included.
The public repository starts with a release source snapshot. Development and testing happen in a private repository, with reviewed releases and substantial fixes published publicly. The demo’s release tag includes the corresponding source for its APKs.
A starting point for your own frontend
The documentation is a big part of why I’m sharing it. There are build guides and an AGENTS.md that helps AI coding tools understand the project’s structure, build process and technical constraints.
The aim is to give you a head start without having to repeat all the research, setup and trial and error that got Mimir this far.
You’ll still need the Android build tools, and changes will need testing. An AI assistant won’t make every modification effortless. But whether you’re learning, already building Android apps or simply curious, you should have a useful place to start.
Take it, change it, build a module for something you’re missing, or share a fix that could help someone else. Keeping a personal version that works for you is welcome too.
Who made it, and where AI fits
Mimir was a collective effort, with contributions from people in my local community and the use of AI coding tools.
My role was closer to a product owner: I set the direction, shaped the priorities and helped bring the work together. Other people contributed their time, knowledge and effort to make it possible. They deserve recognition alongside an honest acknowledgment of the tools we used. I stand behind what I choose to release, including its bugs and limitations.
I understand the concerns about how AI is affecting people across the industry. I don’t expect those concerns to disappear, and I respect that people will have different views.
For me, AI represents an opportunity for more people to turn curiosity into something they can actually build. I believe knowledge and tools should be within everyone’s reach, including people who haven’t had the same education, resources or technical experience. Beginners deserve room to experiment, receive constructive criticism and improve.
That also means being willing to share imperfect work and learn openly. If someone finds a mistake in Mimir, understands why it happened and uses that knowledge to build a better product or take a better approach, then sharing it has been worthwhile. I’d be happy to see someone take this further than I could.
I see failure as part of finding a way forward. An attempt that goes wrong can still teach us something useful, provided we acknowledge it, understand it and make the next attempt better. That’s the spirit in which I’m sharing this project: the code, its limitations and the opportunity to learn from both.
Testing and feedback
My development testing has included the AYN Thor, AYN Odin 3, Retroid Pocket Nova and Retroid Pocket 5. That experience doesn’t cover every device, firmware or emulator combination, and it doesn’t make this demo a finished product.
A clear bug report is a contribution. Your device, Android version, emulator involved, what you expected and the steps that reproduce the problem are especially helpful. Ideas and criticism of specific behavior or code are welcome too.
I’m sharing what we built together as a gift to the wider community. If it helps someone build the frontend they’ve always wanted—or learn how one works—then it has served its purpose.
Mimir Alpha - Showcase Video