Express Directory View Middleware

1.0.5 · abandoned · verified Wed Apr 22

This package provides an Express.js middleware designed to render a web-based directory listing, functioning similarly to traditional web server directory indexes (like Apache's `mod_autoindex`). It allows users to browse files and subdirectories within a specified `root` directory via a web interface. The current stable version, 1.0.5, was published in April 2017. Its development appears to have ceased, with the last commit on its GitHub repository also from April 2017, indicating an abandoned status. The middleware was likely intended for simple, visual directory browsing, but it is now significantly outdated. It lacks modern features, security hardening, comprehensive configuration options, and is not compatible with recent Node.js or Express.js versions. Due to its age and lack of maintenance, it is not recommended for new projects and poses significant security risks or compatibility issues.

Common errors

Warnings

Install

Imports

Quickstart

Demonstrates setting up `express-dirview-middleware` to serve a browsable directory listing for a specified `public` folder.

const express = require('express');
const dirMiddleware = require('express-dirview-middleware');
const path = require('path');
const app = express();
const port = process.env.PORT || 8080;

// Create a dummy 'public' directory for demonstration if it doesn't exist
// In a real app, ensure your root directory exists and contains files/folders.
const publicDir = path.join(__dirname, 'public');
require('fs').mkdirSync(publicDir, { recursive: true });
require('fs').writeFileSync(path.join(publicDir, 'hello.txt'), 'Hello from express-dirview-middleware!');
require('fs').mkdirSync(path.join(publicDir, 'subdir'), { recursive: true });
require('fs').writeFileSync(path.join(publicDir, 'subdir', 'nested.md'), '# Nested Markdown');

// Serve the directory view for the 'public' directory at the root URL
app.use('/', dirMiddleware({ root: publicDir }));

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

view raw JSON →