Munisaq 3.0: rebuilt from the rails up. Still no ads. A new foundation. Munisaq is now built entirely on Swift 6 with strict concurrency — an entire class of data races is caught before the app ever runs. Modern SwiftUI throughout. Built on the iOS 26 SDK, with every API current and not a single build warning. And 126 automated tests, pinned against real rail-API data, stand guard over every release. Lighter on its feet. Less background work. Faster to open. Kinder to your battery. Now it speaks. Full VoiceOver support in English and Traditional Chinese. Riders who are blind or have low vision can plan a journey, browse timetables, and hear delays announced in words — "moderate delay," not just an orange tint. Everyone deserves to catch their train with confidence. Private, as always. Anonymous usage statistics, introduced with a one-time notice. They can't identify you. They're never sold. They're never used for ads. And Supporters can switch them off entirely. And if a critical update is ever needed, Munisaq can now tell you. Live status, more alive. Every request goes straight to the source, so status and delays arrive fresher. The Status tab reads clearly on any day — real alerts when there are alerts, Good Service when the line is running normally. Requires iOS 26. On an older iPhone, 2.4.1 keeps running.