SwiftUI app for iOS and iPadOS that monitors MeuLab services in real time.
The app is designed as a client for the MeuLab environment, aggregating operational data from aviation, satellite, system, radio, and weather services into a single mobile interface.
Main areas:
- ADS-B
- Radar
- ACARS
- Satellite
- System
- Radio
- Weather
- real-time MeuLab service monitoring
- push notifications with automatic tab routing
- API token loaded at runtime instead of hardcoded in source
- iPhone and iPad support with SwiftUI
- Xcode 15+
- iOS / iPadOS 17+
- Swift 5.9+
- Open
MeuLabApp.xcodeprojin Xcode. - Create
MeuLabApp/Resources/Secrets.plistfromSecrets.plist.example. - Add your
API_TOKEN. - Configure your development team in Signing & Capabilities.
- Run on a simulator or device.
Example:
<key>API_TOKEN</key>
<string>YOUR_TOKEN_HERE</string>The app looks for the token in this order:
Info.plistviaAPI_TOKENSecrets.plistbundled with the app viaAPI_TOKEN
If no token is found, protected endpoints return 401.
MeuLabApp/MeuLabApp.swift: app bootstrap and notification integrationMeuLabApp/ContentView.swift: main tab containerMeuLabApp/Services/APIService.swift: HTTP client and endpoint integrationMeuLabApp/Services/PushNotificationManager.swift: APNs registration and handlingMeuLabApp/Services/AudioPlayer.swift: radio playbackMeuLabApp/Services/LocationManager.swift: location-aware featuresMeuLabApp/ViewModels/AppState.swift: shared app stateMeuLabApp/Views/Tabs/*.swift: feature-specific screens
/api/adsb/summary/api/adsb/aircraft/api/acars/summary/api/acars/messages/api/acars/hourly/api/acars/search/api/system/status/api/radio/now-playing/api/weather/current/api/satdump/last/images/api/satdump/passes/api/satdump/image/notifications/register/notifications/unregister
To enable the full notification flow:
- enable
Push Notifications - enable
Background Modes > remote-notification - configure APNs in Apple Developer
- make sure the backend accepts registration and unregistration with a valid token
Personal MeuLab use.
App SwiftUI para iPhone e iPad que monitora os serviços do ambiente MeuLab em tempo real.
O app funciona como cliente do ambiente MeuLab, reunindo dados operacionais de aviação, satélite, sistema, rádio e clima em uma única interface móvel.
Áreas principais:
- ADS-B
- Radar
- ACARS
- Satélite
- Sistema
- Rádio
- Clima
- monitoramento em tempo real dos serviços do MeuLab
- push notifications com navegação automática para a aba relacionada
- token de API carregado em runtime, sem segredo hardcoded no código
- suporte a iPhone e iPad com SwiftUI
- Xcode 15+
- iOS / iPadOS 17+
- Swift 5.9+
- Abra
MeuLabApp.xcodeprojno Xcode. - Crie
MeuLabApp/Resources/Secrets.plista partir deSecrets.plist.example. - Adicione seu
API_TOKEN. - Configure seu time de desenvolvimento em Signing & Capabilities.
- Rode no simulador ou dispositivo.
Exemplo:
<key>API_TOKEN</key>
<string>SEU_TOKEN_AQUI</string>O app procura o token nesta ordem:
Info.plistcom a chaveAPI_TOKENSecrets.plistno bundle com a chaveAPI_TOKEN
Se não houver token, endpoints protegidos retornam 401.
MeuLabApp/MeuLabApp.swift: bootstrap do app e integração com notificaçõesMeuLabApp/ContentView.swift: contêiner principal de abasMeuLabApp/Services/APIService.swift: cliente HTTP e integração com endpointsMeuLabApp/Services/PushNotificationManager.swift: registro e tratamento de APNsMeuLabApp/Services/AudioPlayer.swift: reprodução da rádioMeuLabApp/Services/LocationManager.swift: recursos dependentes de localizaçãoMeuLabApp/ViewModels/AppState.swift: estado compartilhado do appMeuLabApp/Views/Tabs/*.swift: telas específicas de cada domínio
/api/adsb/summary/api/adsb/aircraft/api/acars/summary/api/acars/messages/api/acars/hourly/api/acars/search/api/system/status/api/radio/now-playing/api/weather/current/api/satdump/last/images/api/satdump/passes/api/satdump/image/notifications/register/notifications/unregister
Para habilitar o fluxo completo:
- ative
Push Notifications - ative
Background Modes > remote-notification - configure APNs no Apple Developer
- garanta que o backend aceite registro e remoção com token válido
Uso pessoal do MeuLab.