An Android Flutter remake of SteamServerBrowser, focused on Steam server discovery and A2S query compatibility.
The project currently targets Android arm64-v8a.
- Steam master server browsing through the Steam Web API
- Live
A2S_INFO,A2S_PLAYER, andA2S_RULESqueries - Custom
App IDinput with automatic game-name lookup - Favorites and manual
IP:portserver entries - Map, tag, ping, player-count, country, and result-limit filters
- Offline GeoIP filtering with a user-imported
.mmdbdatabase - Embedded Cronet HTTP client without a Google Play Services dependency
- System-language UI with all languages supported by Flutter Material
- Flutter SDK
- Android SDK and command-line tools
- JDK 17
- Android device or emulator
flutter pub get
flutter runflutter build apk --release --target-platform android-arm64Only arm64-v8a native libraries are included in the APK. Release builds use
the debug signing configuration by default, so configure a release signing key
before publishing an APK.
Master-list scans require a 32-character Steam Web API key. The Settings screen links to:
https://steamcommunity.com/dev/apikey
Country filtering is enabled after importing a compatible .mmdb database.
ipinfo Lite is a suitable source.
The UI follows the Android system language and does not include an in-app language switch. Unsupported locales fall back to English.
Translation sources are stored in lib/l10n/app_*.arb. The project covers all
82 language codes supported by Flutter Material.
The product title Steam Server Browser remains unchanged in every language.
Regenerate localization classes after editing ARB files:
flutter gen-l10nlib/src/app.dart: UI and system-locale resolutionlib/src/controller/server_browser_controller.dart: state and orchestrationlib/src/network/steam_queries.dart: Steam Web API and A2S querieslib/src/geo/geo_ip_service.dart: MMDB import and lookuplib/src/persistence/preferences_service.dart: settings and favoriteslib/l10n/: translation resources and generated classestest/: unit and localization tests
Scanfetches a new master list and queries its servers.Refreshupdates only the currently loaded server entries.- Browse and Favorites use explicit buttons instead of pull-to-refresh.
- The result limit is capped at
10000.
See LICENSE.