create-mvc-backend-app
Version:
A complete backend API template following MVC architecture with Node.js, Express.js, MongoDB, and JWT authentication
54 lines (46 loc) • 1.21 kB
JavaScript
import 'dotenv/config';
import express from 'express';
import cors from 'cors';
import cookieParser from 'cookie-parser';
import authRouter from './routes/auth.routes.js';
const app = express();
// Middleware
app.use(cors({
origin: process.env.FRONTEND_URL || 'http://localhost:3000',
credentials: true
}));
app.use(express.json());
app.use(cookieParser());
// Routes
app.use('/api/auth', authRouter);
// Health check route
app.get('/api/health', (req, res) => {
res.status(200).json({
success: true,
message: "Server is running",
timestamp: new Date().toISOString()
});
});
app.get('/', (req, res) => {
res.status(200).json({
success: true,
message: "Server is running",
timestamp: new Date().toISOString()
});
});
// Error handling
app.use((err, req, res, next) => {
console.error('Error:', err.message);
res.status(500).json({
success: false,
message: 'Internal server error'
});
});
// 404 handler
app.use('*', (req, res) => {
res.status(404).json({
success: false,
message: 'Route not found'
});
});
export default app;