File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -65,6 +65,20 @@ export default function AboutPage() {
6565 Network tab, paste a token, and exercise every feature. You will see
6666 no outbound request carrying your token, secret, or keys.
6767 </ p >
68+ < p >
69+ And you don't have to take our word for it — JWTForge is open
70+ source. Read the code, check what the deployed commit does, and audit
71+ the claims on this page at{ " " }
72+ < a
73+ href = "https://github.com/devploit/jwtforge"
74+ target = "_blank"
75+ rel = "noopener noreferrer"
76+ className = "text-accent hover:underline"
77+ >
78+ github.com/devploit/jwtforge
79+ </ a >
80+ .
81+ </ p >
6882 </ Section >
6983
7084 < Section title = "The one exception: JWKS fetch" >
Original file line number Diff line number Diff line change @@ -28,6 +28,7 @@ const mono = JetBrains_Mono({
2828import { SiteNav } from "@/components/SiteNav" ;
2929import { PrivacyBadge } from "@/components/PrivacyBadge" ;
3030import { Logo } from "@/components/Logo" ;
31+ import { GithubLink } from "@/components/GithubLink" ;
3132import { JsonLd } from "@/components/JsonLd" ;
3233import { AnalyticsClient } from "@/components/AnalyticsClient" ;
3334import { ServiceWorkerRegister } from "@/components/ServiceWorkerRegister" ;
@@ -127,7 +128,10 @@ export default function RootLayout({
127128 </ Link >
128129 < PrivacyBadge />
129130 </ div >
130- < SiteNav />
131+ < div className = "flex items-center gap-3 sm:gap-4" >
132+ < SiteNav />
133+ < GithubLink className = "border-l border-line/70 pl-3 sm:pl-4" />
134+ </ div >
131135 </ div >
132136 </ header >
133137 < main id = "main" className = "mx-auto max-w-6xl px-4 py-6" >
@@ -156,6 +160,15 @@ export default function RootLayout({
156160 @devploit
157161 </ a > { " " }
158162 < span className = "text-slate-700" > — built in the browser, for the browser</ span >
163+ < span className = "mx-2 text-slate-700" > ·</ span >
164+ < a
165+ href = "https://github.com/devploit/jwtforge"
166+ target = "_blank"
167+ rel = "noopener noreferrer"
168+ className = "text-slate-400 transition-colors hover:text-accent"
169+ >
170+ source on GitHub
171+ </ a >
159172 </ p >
160173 </ footer >
161174 < AnalyticsClient />
Original file line number Diff line number Diff line change 1+ const REPO_URL = "https://github.com/devploit/jwtforge" ;
2+
3+ /** Link to the public source — the ultimate proof of the privacy guarantee. */
4+ export function GithubLink ( { className = "" } : { className ?: string } ) {
5+ return (
6+ < a
7+ href = { REPO_URL }
8+ target = "_blank"
9+ rel = "noopener noreferrer"
10+ aria-label = "View source on GitHub"
11+ title = "View source on GitHub — verify the privacy claim yourself"
12+ className = { `inline-flex items-center gap-1.5 text-slate-400 transition-colors hover:text-accent ${ className } ` }
13+ >
14+ < svg width = "18" height = "18" viewBox = "0 0 16 16" fill = "currentColor" aria-hidden = "true" >
15+ < path d = "M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z" />
16+ </ svg >
17+ < span className = "text-sm font-medium" > Source</ span >
18+ </ a >
19+ ) ;
20+ }
You can’t perform that action at this time.
0 commit comments