aprs.me/lib/aprsme_web
Graham McIntire a796f8a3a9
Add Weather API controller with parameter validation
Implements GET /api/v1/weather/nearby endpoint with comprehensive parameter
validation and error handling. The controller validates required parameters
(lat, lon, radius) and optional parameters (hours, limit) with appropriate
range checking. Integrates with PreparedQueries for efficient database access
and WeatherJSON for response serialization.

Key features:
- Required params: lat (-90 to 90), lon (-180 to 180), radius (0-1000 miles)
- Optional params: hours (1-168, default 6), limit (1-100, default 50)
- Proper error responses via FallbackController (400 for bad requests, 422 for validation)
- Full test coverage (16 tests) including edge cases and error scenarios

Also updates FallbackController to handle {:error, status, message} tuples
and fixes WeatherJSON to support both field name formats (lat/lon and latitude/longitude)
for compatibility with existing tests and actual query results.
2026-03-22 11:27:45 -05:00
..
channels Improve packet pipeline reliability, security, and cleanup efficiency 2026-02-19 14:11:48 -06:00
components vendor heroicons SVGs, remove GitHub dependency 2026-03-03 13:34:23 -06:00
controllers Add Weather API controller with parameter validation 2026-03-22 11:27:45 -05:00
live fix(ios): improve WebSocket stability on iPhone Safari 2026-03-11 10:58:16 -05:00
plugs Add client IP to request log metadata 2026-02-20 17:48:15 -06:00
aprs_symbol.ex Refactor conditionals to use multi-clause pattern matching 2026-02-10 17:15:49 -06:00
endpoint.ex fix: performance improvements and bug fixes across backend and frontend 2026-03-19 12:41:36 -05:00
gettext.ex more languages 2025-07-06 10:08:58 -05:00
router.ex Add Weather API controller with parameter validation 2026-03-22 11:27:45 -05:00
telemetry.ex Fix code review findings: security, correctness, performance, dead code 2026-02-19 18:49:27 -06:00
time_helpers.ex improve dialyzer 2025-10-13 10:02:15 -05:00
time_utils.ex improve dialyzer 2025-10-13 10:02:15 -05:00
user_auth.ex Fix credo warnings and start on design suggestions 2026-02-09 11:23:01 -06:00
weather_units.ex Refactor conditionals to use multi-clause pattern matching 2026-02-10 17:15:49 -06:00