/
npronnikov
/
ProcessVisualizer
Обзор
Документация
Войти
/
npronnikov
/
ProcessVisualizer
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
backend/src/server.ts
55 строк
2 KB
Madnick
feat: add user management, test data seeder, UI improvements
06 фев 2026, 02:35
06 фев 2026, 02:35
fff3e67
Код
Авторство
О чём код?
import express, { Application } from 'express'; import cors from 'cors'; import path from 'path'; import { initializeSchema } from './database/schema'; import { errorHandler, notFound } from './middleware/errorHandler'; import groupsRouter from './routes/groups.routes'; import processesRouter from './routes/processes.routes'; import operationsRouter from './routes/operations.routes'; import authRouter from './routes/auth.routes'; import usersRouter from './routes/users.routes'; import analyticsRouter from './routes/analytics.routes'; // Initialize database schema initializeSchema(); // Create Express app const app: Application = express(); const PORT = process.env.PORT || 3001; // Middleware app.use(cors()); app.use(express.json()); app.use(express.urlencoded({ extended: true })); // Serve static files (BPMN uploads) app.use('/uploads', express.static(path.join(__dirname, '../uploads'))); // Health check app.get('/health', (_req, res) => { res.json({ status: 'ok', timestamp: new Date().toISOString() }); }); // API routes // Important: processes routes must come before groups to handle /api/groups/:groupId/processes app.use('/api/auth', authRouter); app.use('/api/users', usersRouter); app.use('/api', processesRouter); app.use('/api/groups', groupsRouter); app.use('/api', operationsRouter); app.use('/api/analytics', analyticsRouter); // 404 handler app.use(notFound); // Error handler (must be last) app.use(errorHandler); // Start server app.listen(PORT, () => { console.log(`Server is running on http://localhost:${PORT}`); console.log(`Health check: http://localhost:${PORT}/health`); console.log(`API endpoints: http://localhost:${PORT}/api`); }); export default app;