Spaces:
Running
Running
| require('dotenv').config(); | |
| const express = require('express'); | |
| const mongoose = require('mongoose'); | |
| const cors = require('cors'); | |
| const path = require('path'); | |
| const app = express(); | |
| // Middleware | |
| app.use(cors()); | |
| app.use(express.json()); | |
| app.use(express.static(path.join(__dirname, '../client/dist'))); | |
| // Database connection | |
| mongoose.connect(process.env.MONGODB_URI, { | |
| useNewUrlParser: true, | |
| useUnifiedTopology: true | |
| }) | |
| .then(() => console.log('Connected to MongoDB')) | |
| .catch(err => console.error('MongoDB connection error:', err)); | |
| // Routes | |
| const { router: authRoutes, auth } = require('./routes/auth'); | |
| const courseRoutes = require('./routes/courses'); | |
| const userRoutes = require('./routes/users'); | |
| app.use('/api/auth', authRoutes); | |
| app.use('/api/courses', courseRoutes); | |
| app.use('/api/users', userRoutes); | |
| // Serve client | |
| app.get('*', (req, res) => { | |
| res.sendFile(path.join(__dirname, '../client/dist/index.html')); | |
| }); | |
| const PORT = process.env.PORT || 5000; | |
| app.listen(PORT, () => { | |
| console.log(`Server running on port ${PORT}`); | |
| }); |