- ⚠️ Warning! Fly at your own risk.
Weather report tailored for paramotor pilots. Consolidates data from multiple sources. Worldwide coverage, with extra information within the United States.
- 🌏 Open-Meteo for international winds aloft and hourly weather forecasts
- 🌏 Nearby Terminal Aerodrome Forecasts, if available
- 🌏 Aviation Weather Center SIGMETs (international support), G‑AIRMETs, and CWAs
- 🇺🇸 The NOAA Rapid Refresh Op40 analysis
- 🇺🇸 NWS hourly weather forecast
- 🇺🇸 National Weather Service active alerts
- 🇺🇸 Federal Aviation Administration TFRs
In the project directory, you can run:
Runs the app in the development mode. Open http://localhost:5173 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
Launches the test runner in the interactive watch mode.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
Using a reverse proxy such as Nginx, configure the following:
- Serve
index.html
for 404 requests, no caching- Aggressively cache
/assets
- Aggressively cache
- Create the following reverse proxy endpoints:
- REQUIRED endpoints (for worldwide support):
- GET
/api/position/search
➡https://nominatim.openstreetmap.org/search
- GET
/api/position/reverse
➡https://nominatim.openstreetmap.org/reverse.php
- GET
/api/timezone
➡http://api.timezonedb.com/v2.1/get-time-zone
(You will need to attach an API key. Note: This API is only used as a fallback for when the/api/weather
endpoint fails, or when using Open-Meteo.) - GET
/api/openmeteo/{proxy+}
➡https://api.open-meteo.com/v1/{proxy}
Get worldwide winds aloft and forecast information
- GET
- OPTIONAL endpoints (to further enhance basic global support):
- GET
/api/rap
➡https://rucsoundings.noaa.gov/get_soundings.cgi
- GET
/api/aviationweather
➡https://www.aviationweather.gov/adds/dataserver_current/httpparam
- GET
/api/weather/{proxy+}
➡https://api.weather.gov/{proxy}
Greedy path capturing, forwards to api.weather.gov. - GET
/api/pqs
➡https://epqs.nationalmap.gov/v1/json
Get United States altitude information for a given geolocation. - GET
/api/googleelevation
➡https://maps.googleapis.com/maps/api/elevation/json
Get global altitude information for a given geolocation (backup API). - GET
/api/tfr
➡ self-hosted tfr-scraper - GET
/api/aviationalerts
➡ self-hosted aviation-wx
- GET
- REQUIRED endpoints (for worldwide support):
- IMPORTANT! For each outgoing API request, make sure to:
Your app and/or website can better integrate with ppg.report by setting unit of measure and locale settings for the user.
Use the following link format:
http://ppg.report/29.352,-95.460#user-altitude=MSL&user-speed-unit=m/s&user-temperature-unit=%C2%B0C&user-height-unit=m&user-time-format=12-hour&user-distance-unit=km
Options can be found in settingEnums.ts.