Weather for the places that matter, even when connectivity fails.
A local-first weather app for iOS and Android, built with Laravel and NativePHP Mobile.
Capabilities · Architecture · Technology
Elver brings forecasts, native charts, saved locations, and climate alerts into one mobile experience. Recent weather data stays on the device, giving users useful context even when the network or weather provider is temporarily unavailable.
| Capability | What it provides |
|---|---|
| Weather summary | Current conditions and a forecast for the next 24 hours. |
| Chart explorer | Native line, area, and bar charts for temperature, humidity, precipitation, and wind. |
| Saved locations | Foreground geolocation and local management of multiple places on iOS and Android. |
| Climate alerts | Threshold-based rules with local notifications and background checks. |
| Offline resilience | SQLite snapshots keep the latest available forecast accessible without a connection. |
- Elver loads the latest stored forecast for the selected location.
- A queued refresh requests current data from Open-Meteo.
- Successful responses replace the local snapshot and update the native UI.
- Failed refreshes leave cached data visible and clearly identify it as stored information.
| Layer | Responsibility |
|---|---|
| Native UI | NativeComponent screens and EDGE views rendered with SwiftUI and Jetpack Compose. |
| Domain | Typed weather data, metrics, thresholds, and alert evaluation rules. |
| Application services | Forecast orchestration, chart preparation, refresh queues, and background scheduling. |
| Persistence | Locations, weather snapshots, and alert state stored in SQLite. |
| Native bridges | Local plugins for foreground geolocation and background climate notifications. |
| Area | Implementation |
|---|---|
| Application | Laravel 13 and PHP 8.4+ |
| Mobile runtime | NativePHP Mobile v4 |
| Native interface | SwiftUI on iOS and Jetpack Compose on Android |
| Charts | donmanueldev/nativephp-charts |
| Weather data | Open-Meteo |
| Persistence | SQLite |
| Testing | Pest |
app/Domain/Weather/ Weather and alert domain contracts
app/NativeComponents/ Native screen state and interactions
app/Services/Weather/ Forecast, chart, and alert orchestration
packages/elver/ Local geolocation and notification plugins
resources/views/native/ EDGE views rendered as native UI
tests/ Domain, service, job, and native UI coverage
Crafted with passion by Momotombo Devs