Files
carry-your-live/backend/src/index.ts
T
2026-08-23 11:36:17 +02:00

51 lines
1.4 KiB
TypeScript

import 'dotenv/config';
import express from 'express';
import cors from 'cors';
import authRoutes from './routes/auth';
import categoryRoutes from './routes/categories';
import taskRoutes from './routes/tasks';
import subtaskRoutes from './routes/subtasks';
import userRoutes from './routes/users';
import friendRoutes from './routes/friends';
import repeatProfileRoutes from './routes/repeatProfiles';
import syncRoutes from './routes/sync';
import pushNotificationRoutes from './routes/pushNotifications';
import { errorHandler, notFoundHandler } from './middleware/errorHandler';
const app = express();
const PORT = process.env.PORT || 3000;
app.use(cors({
origin: true,
credentials: true,
}));
app.use(express.json());
// Health check
app.get('/health', (req, res) => {
res.json({ status: 'ok', timestamp: Date.now() });
});
// API routes
app.use('/api/auth', authRoutes);
app.use('/api/categories', categoryRoutes);
app.use('/api/tasks', taskRoutes);
app.use('/api/subtasks', subtaskRoutes);
app.use('/api/users', userRoutes);
app.use('/api/repeat-profiles', repeatProfileRoutes);
app.use('/api/sync', syncRoutes);
app.use('/api/friends', friendRoutes);
app.use('/api/push', pushNotificationRoutes);
// 404 handler
app.use(notFoundHandler);
// Error handler
app.use(errorHandler);
app.listen(PORT, () => {
console.log(`🚀 Server running on http://localhost:${PORT}`);
console.log(`📚 API available at http://localhost:${PORT}/api`);
});
export default app;