Secure HTML Sharing

Team Reports

AI agents like Claude, ChatGPT, and Copilot are generating rich HTML reports every day — dashboards, analyses, sprint reviews, audits. But sharing them securely is still a problem. Email attachments get lost, internal wikis require logins, and pasting into Notion strips the formatting.

This repo solves that. Drop your HTML files in a folder, set a password, run one command, and your reports are AES-256 encrypted and published on GitHub Pages. No backend, no database, no accounts to manage. Just a password and a link.

Reports
Select your team — credentials required

How It Works
From HTML file to secure shared report
Encryption
AES-256 + 600K PBKDF2
Hosting
GitHub Pages (free)
Backend
None — fully static
Decryption
Client-side in browser
Per Team
Unique salt + password
Remember Me
30-day auto-login
Password Check
Strength warnings on build
Dependencies
Dependabot auto-updates
Add Your Reports
Requires Node.js (v18+) — works on Windows, macOS, and Linux
1
Clone the repo and run npm install
2
Create a folder teams/your-team/ and drop your HTML files in it. Use the test-team template as a starting point.
3
Add your team to teams.json with a name and password. Add the team link to the root index.html.
4
Run npm run build — it encrypts every HTML file and generates a team index page automatically.
5
Commit the dist/ folder and push. GitHub Pages deploys it instantly. Share the link and password with your team.
Security
What gets published and what stays private

Raw HTML reports and passwords never leave your machine. They are gitignored and excluded from the repo. Only the AES-256 encrypted output is committed and deployed. The encrypted pages contain zero readable content — not even the page title is exposed.

Each team gets a unique cryptographic salt, so even if two teams use the same password their encryption keys are different. Passwords are hashed through 600,000 PBKDF2 iterations to resist brute-force attacks. The build script warns about weak passwords. Decryption happens entirely in the browser using the Web Crypto API — nothing is sent to any server.

Get Started
Fork, clone, or read the docs

Full setup instructions, template reference, and file structure guide are in the README.