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:
@@ -6,6 +6,7 @@ import path from 'path';
|
||||
import reportRoutes from './routes/reportRoutes';
|
||||
import eventRoutes from './routes/eventRoutes';
|
||||
import userRoutes from './routes/userRoutes';
|
||||
import externalDataRoutes from './routes/externalDataRoutes';
|
||||
|
||||
// Load environment variables
|
||||
dotenv.config();
|
||||
@@ -42,6 +43,7 @@ app.get('/health', (req, res) => {
|
||||
app.use('/api/reports', reportRoutes);
|
||||
app.use('/api/events', eventRoutes);
|
||||
app.use('/api/users', userRoutes);
|
||||
app.use('/api/external', externalDataRoutes);
|
||||
|
||||
// Error handling middleware
|
||||
app.use((err: any, req: express.Request, res: express.Response, next: express.NextFunction) => {
|
||||
|
||||
Reference in New Issue
Block a user