require('dotenv').config({ path: require('path').join(__dirname, '..', '.env') }); const express = require('express'); const cors = require('cors'); const path = require('path'); const authRouter = require('./routes/auth'); const { authMiddleware } = require('./middleware/auth'); const productsRouter = require('./routes/products'); const customersRouter = require('./routes/customers'); const ordersRouter = require('./routes/orders'); const dashboardRouter = require('./routes/dashboard'); const app = express(); const PORT = process.env.PORT || 3002; app.set('trust proxy', 1); app.use(cors({ origin: true, credentials: true })); app.use(express.json()); app.use('/api/auth', authRouter); app.use('/api', authMiddleware); app.use('/api/products', productsRouter); app.use('/api/customers', customersRouter); app.use('/api/orders', ordersRouter); app.use('/api/dashboard', dashboardRouter); if (process.env.NODE_ENV === 'production') { app.use(express.static(path.join(__dirname, '..', 'client', 'dist'))); app.get('*', (req, res) => { res.sendFile(path.join(__dirname, '..', 'client', 'dist', 'index.html')); }); } app.listen(PORT, () => { console.log(`Server running on http://localhost:${PORT}`); });