Nginx-File-Directory is a standalone HTML template replicating the Nginx file directory listing page. It's a single index.html file with no JavaScript—pure HTML/CSS designed to work on any web server.
index.html # The core deliverable — single-file HTML template
Dockerfile # nginx:stable container serving the template
package.json # NPM metadata only (no dependencies)
.deepsource.toml # DeepSource static analysis config
.github/workflows/ # CI: Docker publish, GitHub Pages deploy, Gitleaks
docs/ # Usage, customization, legal docs
- Source: Pure HTML/CSS (no JS frameworks, no build step)
- Container: Docker with
nginx:stablebase image - Deployment: GitHub Pages (auto-deploys on push to main) + GitHub Container Registry
There is no build step. Edit index.html directly, then test in a browser.
No automated test suite exists. npm test exits with an error by design.
Manual testing checklist:
- Open
index.htmlin Chrome, Firefox, and Edge - Validate HTML via W3C validator
- Check accessibility basics
No automated linter is configured. DeepSource runs Prettier formatting checks and Docker/JS analysis externally.
docker build -t nginx-file-directory .
docker run -p 8080:80 nginx-file-directory- Indentation: 4 spaces
- Copyright headers: Required in source files (Nginx Development Team + willtheorangeguy)
- HTML style: Keep layout/functionality as close to original Nginx design as possible
- Versioning: Semantic Versioning (v1.x.x), currently v1.2.0
| Workflow | Trigger | Purpose |
|---|---|---|
docker-publish.yml |
Push, tag, PR, daily schedule | Build/push Docker images to GHCR |
pages.yml |
Push to main | Deploy to GitHub Pages |
gitleaks.yml |
Push/PR | Secret scanning |
index.html— The only source file. 22-line HTML template with placeholder file/folder entries.docs/CUSTOMIZATION.md— How to edit directory names, add files/folders, change formatting.docs/USAGE.md— Installation via GitHub download or Docker.CONTRIBUTING.md— Contribution guidelines and coding standards.