**Factorio with mods running at 60 fps on a iPhone 15 Pro Max**
I'm the developer. **Porthole 1.0.0** is the first public release of an iPhone/iPad app that runs Windows PC games locally.
**It's built on Madeira**) (Wine, FEX-Emu, DXMT). I know a few frontends exist for it now, so here is what Porthole focuses on:
- **Know before you try.** Every game shows a compatibility badge from real reports, counted per phone model *and* engine version, so an old result is never passed off as current. "Not yet tested" means nobody has reported it yet. You can see and apply the settings people used when a game ran well.
- **Reporting is in the app.** A compatibility report takes under a minute. *Report a problem* sends a cleaned log (account names and public IPs removed) and you can read my answer back inside the app.
- **All your stores in one place.** Steam, Epic Games, GOG and itch.io (games you own) with one shared downloads page.
- **Controller-first.** The whole app works with a controller; games show FULL/PARTIAL support badges; you choose what the game sees.
- **Engine work, in the open.** About 120 documented patches of my own on top of Madeira. I merge upstream regularly (212 commits in the last merge) and have taken open Madeira pull requests, credited to their authors, before they landed upstream.
- **Updates on your terms:** on-device with your own certificate, rollback to any version, signed releases.
No ads, no analytics, no account.
- Not on the App Store: you sign and install it yourself, and it needs JIT.
- No games included, nothing bypassed. You bring games you own.
- Early: many games don't run; kernel anti-cheat never works. [YOU: what you've confirmed running / what fails]
- iOS 18+ (tested on 26 and 27). Paid developer account or certificate service recommended; a free Apple ID works with limits.
- Large parts were written with an AI assistant, then directed, reviewed and tested by me on real devices.
**Links**
- Release 1.0.0
- Github
- Website
- Discord
Try it and tell me what breaks, and send a compatibility report after you play.