Core idea: publish useful public files without renting a VPS, installing a LAMP stack, maintaining Apache/PHP, or remembering server-hardening rituals every six months.
S3 stores files S3 Event Notifications detect changes Lambda builds directory indexes CloudFront serves globally Lambda@Edge renders public directory pages
There is no public SSH service, no Apache process to exploit, no PHP runtime exposed to random traffic, and no web server box that needs constant babysitting. The public surface is CloudFront plus carefully scoped AWS functions.
Static files are served by S3 and CloudFront. Directory pages can be rendered from tiny prebuilt JSON indexes. That means the system gets faster as it becomes more indexed, rather than slower as folders grow.
A plain S3 bucket is powerful but not friendly. People need to browse, sort, inspect sizes, see dates, open source files inline, and understand what they are looking at. This project makes S3 feel like a clean public software archive.
The optional updater Lambda writes a small file in each folder:
.directory-index.json
That file contains the folder names, file names, timestamps, and sizes for the directory. The viewer Lambda reads that one JSON file instead of discovering everything at click time.
You do not need to be a professional high-level cloud engineer to use this. The package is designed to be inspectable, educational, and forgiving. Start with the simple viewer Lambda, then add the updater Lambda when you want the fastest version.
Folder sizes are available in the super-fast prebuilt index mode. The S3 event updater calculates folder sizes in the background and writes them into .directory-index.json. The public viewer reads those values instantly instead of scanning folders while a visitor waits.