ecomm/src/index.ts

40 lines
915 B
TypeScript
Raw Normal View History

import express from 'express';
2023-06-08 16:03:27 +00:00
import mongoose from 'mongoose';
2023-06-09 15:39:20 +00:00
import cookieParser from 'cookie-parser';
2023-06-08 17:08:15 +00:00
2023-06-15 07:00:22 +00:00
import userRouter from './routes/userRouter';
import productRouter from './routes/productRouter';
import cartRouter from './routes/cartRoute';
2023-06-08 15:50:54 +00:00
2023-06-08 16:03:27 +00:00
const env = require('dotenv').config().parsed;
const app = express();
2023-06-10 22:22:34 +00:00
const PORT = env.PORT || 3000;
app.use(express.json());
2023-06-09 15:39:20 +00:00
app.use(cookieParser())
2023-06-08 16:03:27 +00:00
// Connect to MongoDB using Mongoose
mongoose.connect(env.DATABASE_URL);
2023-06-08 16:03:27 +00:00
const db = mongoose.connection;
2023-06-08 16:53:03 +00:00
// Check for DB connection
2023-06-09 21:03:43 +00:00
db.on('error', () => {
console.error.bind(console, 'MongoDB connection error:')
process.exit(1);
});
2023-06-08 16:03:27 +00:00
db.once('open', () => {
console.log('Connected to MongoDB');
});
2023-06-08 16:53:03 +00:00
// Routes
2023-06-08 17:08:15 +00:00
app.use('/users', userRouter);
2023-06-09 15:39:20 +00:00
app.use('/products', productRouter);
2023-06-09 21:03:43 +00:00
app.use('/cart', cartRouter);
2023-06-08 16:53:03 +00:00
// Start server
2023-06-08 16:03:27 +00:00
app.listen(PORT, () => {
console.log(`Server started on port ${PORT}`);
});