feat: implement external API integration with static tide tables (task 32)

- Add in-memory caching for external API responses (6-hour expiration)
- Implement OpenWeatherMap integration for weather data
- Create static tide tables for 22 Irish coastal stations
- Add tide calculation based on semi-diurnal patterns and lunar cycles
- Implement water quality, beach quality, and biodiversity placeholder endpoints
- Add comprehensive API documentation (EXTERNAL_API_SETUP.md)
- Fix frontend WaterQualityIndicator crash
- Remove Redis dependency (using in-memory cache instead)
- All external data endpoints functional and tested
This commit is contained in:
2025-11-16 23:24:42 +00:00
parent 92426c5cc1
commit 3d487a468e
15 changed files with 2260 additions and 4 deletions

View File

@@ -12,3 +12,10 @@ NODE_ENV=development
# File Upload
UPLOAD_DIR=./uploads
MAX_FILE_SIZE=5242880
# Redis Cache
REDIS_URL="redis://localhost:6379"
# External APIs
OPENWEATHER_API_KEY="your_openweather_api_key_here"
# Optional: STORMGLASS_API_KEY="your_stormglass_api_key_here" (10 free requests/day for tide data)