Privacy-first cybersecurity tools. Most run 100% in your browser — nothing is uploaded. 125 tools across 12 categories, each with its own indexable, SEO-optimized page.
- Astro 6 (static-site generation) · TypeScript (strict) · Tailwind v4 (PostCSS) · Preact islands.
- Strict, hash-based Content-Security-Policy on every page (no
unsafe-inline/unsafe-eval). - Tool logic is pure & DOM-free (
src/tools/logic), unit-tested with adversarial inputs.
| Command | Does |
|---|---|
npm run dev |
Local dev server |
npm run build |
Static build → dist/ |
npm test |
Unit + adversarial suites (Vitest) |
npm run audit |
Dependency SCA |
npm run e2e |
Playwright E2E (run npx playwright install first) |
src/
data/catalogue.ts # 125 tools (auto-generated from the spreadsheet; do not hand-edit)
lib/ # sanitizer, csp/limits, worker-runner, byok-client, dom, seo
tools/logic/<slug>.ts # pure, testable tool algorithms
components/ # Layout, Header, Footer, ToolShell
pages/ # index, /tools, /categories, /tools/<slug>
tests/ # unit + adversarial per tool
docs/ # DECISIONS, DEPENDENCIES, SECURITY, GAPS_TRACKER, PROGRESS, DEPLOYMENT, BLOCKERS
public/_headers # host security headers
scripts/gen-catalogue.py# regenerates catalogue.ts from the .xlsx
See docs/ for the full security posture and deploy guide.
Built by Umaadi.