const express = require('express');
const dotenv = require('dotenv');
const cookieParser = require('cookie-parser');
const path = require('path');

// Import routes
const webRoutes = require('./Routes/web');
const apiRoute = require('./Routes/apiRoute');

// Load env variables
dotenv.config();

// Initialize express
const app = express();

// Essential middleware
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(express.static('public'));
app.use(cookieParser());

// Set view engine and views directory
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'Views'));

// Routes
app.use('/', webRoutes);
app.use('/api', apiRoute);

// Start server
const port = process.env.PORT || 3000;
app.listen(port, () => {
  console.log(`Server is running on port ${port}`);
});