Get your own Node server
const express = require('express');
const app = express();
const port = 8080;

// Route definition in a separate module
const usersRouter = express.Router();

// Middleware specific to this router
usersRouter.use((req, res, next) => {
  console.log('Users Router accessed at:', Date.now());
  next();
});

// Define routes for the users router
usersRouter.get('/', (req, res) => {
  res.send(`
    <h2>Users List</h2>
    <ul>
      <li><a href="/users/1">User 1</a></li>
      <li><a href="/users/2">User 2</a></li>
      <li><a href="/users/3">User 3</a></li>
    </ul>
  `);
});

usersRouter.get('/:id', (req, res) => {
  res.send(`
    <h2>User Profile</h2>
    <p>User ID: ${req.params.id}</p>
    <p><a href="/users">Back to user list</a></p>
  `);
});

// Another router for products
const productsRouter = express.Router();

productsRouter.get('/', (req, res) => {
  res.send(`
    <h2>Products List</h2>
    <ul>
      <li><a href="/products/1">Product 1</a></li>
      <li><a href="/products/2">Product 2</a></li>
      <li><a href="/products/3">Product 3</a></li>
    </ul>
  `);
});

productsRouter.get('/:id', (req, res) => {
  res.send(`
    <h2>Product Details</h2>
    <p>Product ID: ${req.params.id}</p>
    <p><a href="/products">Back to product list</a></p>
  `);
});

// Root route
app.get('/', (req, res) => {
  res.send(`
    <h1>Express Separate Routes Example</h1>
    <p>Navigate to different sections:</p>
    <ul>
      <li><a href="/users">Users</a></li>
      <li><a href="/products">Products</a></li>
    </ul>
  `);
});

// Use the routers for specific URL paths
app.use('/users', usersRouter);
app.use('/products', productsRouter);

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`);
});

              
http://localhost:8080