ShipGuardScan a site
B

Security scorecard

milepacecalculator.com

Score 82/100 · 3 failed · 0 warnings · 7 passed · 1 not applicable

Scanned 2026-10-21 12:03 UTC in 18.9s · 13 requests · 6 scripts

Top finding (free)

mediumConfirmedfailSecurity headers

Missing Strict-Transport-Security (HSTS)

Without HSTS, a first visit over an untrusted network can be downgraded to HTTP.

Confirmed from the HTTP response headers of the main document.

Locations

  • https://milepacecalculator.com/
Copy-paste fix prompt
@codebase Security fix.

Add the header `Strict-Transport-Security: max-age=31536000; includeSubDomains` to every HTTPS response (in Next.js via `headers()` in next.config, on Vercel via vercel.json, on Netlify via _headers).

Make the minimal change, show the diff per file before applying, and add a short note in SECURITY.md describing the fix.

10 more checks

lowConfirmedfailSecurity headers
Details, location & fix prompt locked
lowConfirmedfailSecurity headers
Details, location & fix prompt locked
criticalpassClient secrets
Details, location & fix prompt locked
criticalpassExposed artifacts
Details, location & fix prompt locked
highpassExposed artifacts
Details, location & fix prompt locked
highpassTransport
Details, location & fix prompt locked
mediumpassSecurity headers
Details, location & fix prompt locked
lowpassExposed artifacts
Details, location & fix prompt locked
lowpassSecurity headers
Details, location & fix prompt locked
highskippedSupabase / BaaS
Details, location & fix prompt locked

Heuristic match = a string in your public JavaScript/HTML looks like a secret (likely, not verified). Confirmed = directly observed in an HTTP response (e.g. a header is absent, a file's contents were validated). All checks are passive and read-only; secrets are stored redacted to their first 6 characters. A good grade is not a guarantee of security.