PageSourceSearch

https://noir-lang.org/

html noir-lang.org collected 2026-10-03 22:49:06 UTC 77,971 bytes, 114 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3  <head>
4    <meta charset="UTF-8" >
5    <link rel="icon" type="image/png" href="/generated-icon.png" />
6    <link rel="apple-touch-icon" href="/generated-icon.png" />
7    <link rel="manifest" href="/site.webmanifest" />
8    <meta name="theme-color" content="#191919" >
9    <meta name="viewport" content="width=device-width, initial-scale=1.0" >
10    <link rel="canonical" href="https://noir-lang.org/" />
11    <title>Noir - The Programming Language for Private Apps</title>
12    <meta name="description" content="Noir is an open-source, zero-knowledge (ZK) programming language that makes it easy to add privacy to Web2 and Web3 apps. Familiar, Rust-inspired syntax.">
13
14    <!-- Preconnect to the analytics CDN (the only third-party origin) -->
15    <link rel="preconnect" href="https://cdn.matomo.cloud" crossorigin>
16
17    <!-- Preload fonts used above the fold. woff2 fetches use CORS mode, so
18         `crossorigin` is required to match even though these are same-origin. -->
19    <link rel="preload" href="/fonts/AlteHaasGroteskBold.woff2" as="font" type="font/woff2" crossorigin>
20    <link rel="preload" href="/fonts/epilogue-variable.woff2" as="font" type="font/woff2" crossorigin>
21
22    <!-- Deploy trigger -->
23    <meta property="og:title" content="Noir - The Programming Language for Private Apps">
24    <meta property="og:description" content="Noir is an open-source, zero-knowledge (ZK) programming language that makes it easy to add privacy to Web2 and Web3 apps.">
25    <meta property="og:type" content="website">
26    <meta property="og:url" content="https://noir-lang.org/">
27    <meta property="og:site_name" content="Noir">
28    <meta property="og:locale" content="en_US">
29    <meta property="og:image" content="https://noir-lang.org/noir-share-image.jpg">
30    <meta property="og:image:type" content="image/jpeg">
31    <meta property="og:image:width" content="1200">
32    <meta property="og:image:height" content="675">
33
34    <!-- Twitter Card meta tags -->
35    <meta name="twitter:card" content="summary_large_image">
36    <meta name="twitter:title" content="Noir - The Programming Language for Private Apps">
37    <meta name="twitter:description" content="Noir is an open-source, zero-knowledge (ZK) programming language that makes it easy to add privacy to Web2 and Web3 apps.">
38    <meta name="twitter:image" content="https://noir-lang.org/noir-share-image.jpg">
39    
40    <!-- Matomo with Consent Management -->
41    
41<script>
42      var _paq = window._paq = window._paq || [];
43      /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
44      _paq.push(['requireConsent']); // Important: requires consent before tracking
45      _paq.push(['trackPageView']);
46      _paq.push(['enableLinkTracking']);
47      (function() {
48        var u="https://azteclabs.matomo.cloud/";
49        _paq.push(['setTrackerUrl', u+'matomo.php']);
50        _paq.push(['setSiteId', '1']);
51        var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
52        g.async=true; g.src='https://cdn.matomo.cloud/azteclabs.matomo.cloud/matomo.js';
53        s.parentNode.insertBefore(g,s);
54      })();
55    </script>
55
56    <!-- End Matomo Code -->
57    <!-- Overscroll/bounce is handled via CSS `overscroll-behavior: none`
58         (see index.css). JS touch handlers were removed because they also
59         cancelled pinch-to-zoom, an accessibility requirement (WCAG 1.4.4). -->
60
61    <!-- Structured data: helps search engines disambiguate "Noir" (the ZK
62         language) and surface the official site, repo, and social profiles. -->
63    
63<script type="application/ld+json">
64    {
65      "@context": "https://schema.org",
66      "@graph": [
67        {
68          "@type": "WebSite",
69          "@id": "https://noir-lang.org/#website",
70          "url": "https://noir-lang.org/",
71          "name": "Noir",
72          "description": "The programming language for private apps.",
73          "inLanguage": "en"
74        },
75        {
76          "@type": "Organization",
77          "@id": "https://noir-lang.org/#organization",
78          "name": "Noir",
79          "url": "https://noir-lang.org/",
80          "logo": "https://noir-lang.org/generated-icon.png",
81          "sameAs": [
82            "https://github.com/noir-lang/noir",
83            "https://twitter.com/NoirLang",
84            "https://discord.com/invite/JtqzkdeQ6G"
85          ]
86        },
87        {
88          "@type": "SoftwareSourceCode",
89          "name": "Noir",
90          "url": "https://noir-lang.org/",
91          "codeRepository": "https://github.com/noir-lang/noir",
92          "description": "Noir is an open-source, zero-knowledge programming language that makes it easy to add privacy to Web2 and Web3 apps. Familiar, Rust-inspired syntax and a backend-agnostic design.",
93          "license": "https://opensource.org/licenses/MIT",
94          "programmingLanguage": "Noir"
95        }
96      ]
97    }
98    </script>
98
99    
99<script type="module" crossorigin src="/assets/index-DgBKKrYv.js"></script>
99
100    <link rel="modulepreload" crossorigin href="/assets/react-vendor-BtP0CW_r.js">
101    <link rel="modulepreload" crossorigin href="/assets/radix-ui-CkTEeIsQ.js">
102    <link rel="modulepreload" crossorigin href="/assets/utils-BTGVH9Kg.js">
103    <link rel="stylesheet" crossorigin href="/assets/index-_hERt-Sj.css">
104  </head>
105  <body>
106    <div id="root"><div role="region" aria-label="Notifications (F8)" tabindex="-1" style="pointer-events:none"><ol tabindex="-1" class="fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]"></ol></div><div class="bg-[#191919] min-h-screen flex flex-col justify-center w-full"><div class="bg-[#191919] overflow-hidden w-full relative"><a href="#main-content" class="sr-only focus:not-sr-only focus:absolute focus:top-4 focus:left-4 focus:z-[100] focus:px-4 focus:py-2 focus:rounded-md focus:bg-white focus:text-black focus:font-semibold">Skip to main content</a><header class="fixed top-0 left-0 right-0 z-50 bg-[#191919]/90 backdrop-blur-md border-b border-[#ffffff10]"><nav aria-label="Primary" class="flex items-center justify-between px-4 md:px-16 py-4 h-16 md:h-20 max-w-[1440px] mx-auto"><div class="flex items-center"><a href="/"><img class="w-[86px] h-[32px] md:w-[105px] md:h-[39px] object-contain cursor-pointer" alt="Noir logo" src="data:image/png;base64,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"/></a></div><div class="hidden md:flex items-center gap-8"><div class="flex gap-8"></div><a href="/docs/" target="_blank" rel="noopener noreferrer" class="h-[40px] md:h-[50px] px-6 md:px-[34.37px] py-4 md:py-[20.42px] bg-white rounded-[165.33px] font-normal text-black hover:bg-[#ffffff90] text-lg md:text-xl tracking-[0.40px] leading-[24.0px] flex items-center justify-center transition-colors duration-200">Go to Docs<span class="sr-only">(opens in new tab)</span></a></div><button class="md:hidden text-white p-2" aria-label="Toggle menu" aria-expanded="false" aria-controls="mobile-menu"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu"><line x1="4" x2="20" y1="12" y2="12"></line><line x1="4" x2="20" y1="6" y2="6"></line><line x1="4" x2="20" y1="18" y2="18"></line></svg></button></nav></header><div class="pt-16 md:pt-20 min-h-screen flex flex-col"><main id="main-content" tabindex="-1" class="flex-1 focus:outline-none"><div class="overflow-hidden w-full relative bg-[#191919]"><section aria-labelledby="hero-heading" class="hero-background min-h-screen flex items-end"><div class="hero-content flex flex-col items-left w-full max-w-[1440px] mx-auto"><h1 id="hero-heading" class="w-full max-w-[953px] px-4 font-bold text-white text-5xl md:text-6xl lg:text-[64px] text-left tracking-[1.28px] leading-tight md:leading-[70.4px] mb-6 md:mb-8">The Programming Language for Private Apps</h1><p class="w-full max-w-[741px] px-4 font-normal text-white text-xl md:text-2xl lg:text-2xl text-left tracking-[0.48px] leading-relaxed md:leading-[28.8px] mb-8 md:mb-16">Noir is an open-source, zero-knowledge programming language that makes it easy to add privacy to Web2 and Web3 apps alike.</p><div class="flex flex-col sm:flex-row gap-4 md:gap-6 px-4 mb-8 md:mb-3"><a href="/docs/" target="_blank" rel="noopener noreferrer" class="h-[50px] md:h-[60px] px-6 md:px-[34.37px] py-4 md:py-[20.42px] bg-white rounded-[165.33px] font-normal text-black hover:bg-[#ffffff90] text-lg md:text-xl tracking-[0.40px] leading-[24.0px] w-full sm:w-auto flex items-center justify-center transition-colors duration-200">Go to Docs<span class="sr-only">(opens in new tab)</span></a><a href="https://github.com/noir-lang/noir" target="_blank" rel="noopener noreferrer" class="h-[50px] md:h-[60px] px-6 md:px-[34.37px] py-4 md:py-[20.42px] bg-[#191919] rounded-[165.33px] border border-solid border-[#ffffff80] font-normal text-white text-lg md:text-xl tracking-[0.40px] leading-[24.0px] hover:bg-white hover:text-black transition-colors duration-200 flex items-center justify-center gap-2">View on Github<span class="sr-only">(opens in new tab)</span><img class="w-6 md:w-[36.82px] h-6 md:h-[36.2px]" alt="" aria-hidden="true" src="data:image/svg+xml,%3c!DOCTYPE%20svg%20PUBLIC%20&#x27;-//W3C//DTD%20SVG%201.1//EN&#x27;%20&#x27;http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd&#x27;
106%3e%3c!--%20Uploaded%20to:%20SVG%20Repo,%20www.svgrepo.com,%20Transformed%20by:%20SVG%20Repo%20Mixer%20Tools%20--%3e%3csvg%20width=&#x27;800px&#x27;%20height=&#x27;800px&#x27;%20viewBox=&#x27;0%200%2024%2024&#x27;%20xmlns=&#x27;http://www.w3.org/2000/svg&#x27;%20fill=&#x27;none&#x27;%20stroke=&#x27;%23ffffff&#x27;%20stroke-width=&#x27;2&#x27;%20stroke-linecap=&#x27;round&#x27;%20stroke-linejoin=&#x27;round&#x27;%20class=&#x27;feather%20feather-arrow-up-right&#x27;%3e%3cg%20id=&#x27;SVGRepo_bgCarrier&#x27;%20stroke-width=&#x27;0&#x27;/%3e%3cg%20id=&#x27;SVGRepo_tracerCarrier&#x27;%20stroke-linecap=&#x27;round&#x27;%20stroke-linejoin=&#x27;round&#x27;/%3e%3cg%20id=&#x27;SVGRepo_iconCarrier&#x27;%3e%3cline%20x1=&#x27;7&#x27;%20y1=&#x27;17&#x27;%20x2=&#x27;17&#x27;%20y2=&#x27;7&#x27;/%3e%3cpolyline%20points=&#x27;7%207%2017%207%2017%2017&#x27;/%3e%3c/g%3e%3c/svg%3e"/></a></div></div></section><div class="bg-[#191919] max-w-[1440px] mx-auto"><section aria-label="Simple. Powerful. Private." class="mt-[100px] md:mt-[130px] px-4"><div class="flex flex-col items-center xl:hidden"><h2 class="font-bold text-white text-3xl md:text-4xl lg:text-5xl text-center tracking-[0.96px] leading-tight md:leading-[57.6px] mb-4 md:mb-5">Simple. Powerful. Private.</h2><p class="w-full max-w-[700px] font-normal text-white text-lg md:text-xl lg:text-2xl text-center tracking-[0.48px] leading-relaxed md:leading-[28.8px] mb-8 md:mb-10">A zero-knowledge proof in just a few lines of code</p><div class="w-full flex justify-center"><div class="text-card-foreground w-fit h-auto bg-[#1e1e1e] rounded-[12px] border border-solid border-[#333333] shadow-2xl overflow-hidden"><div class="flex items-center justify-between bg-[#2d2d2d] px-4 py-3 border-b border-[#404040]"><div class="flex items-center space-x-2"><div class="w-3 h-3 bg-[#ff5f57] rounded-full"></div><div class="w-3 h-3 bg-[#ffbd2e] rounded-full"></div><div class="w-3 h-3 bg-[#28ca42] rounded-full"></div></div><div class="text-[#cccccc] text-sm font-medium">main.nr</div><div class="w-[54px]"></div></div><div class="p-6 bg-[#1e1e1e]"><pre class="text-left text-sm md:text-lg font-mono leading-relaxed overflow-x-auto"><code class="text-[#d4d4d4]"><span style="color:#c586c0">fn</span> <span style="color:#dcdcaa">main</span>(<!-- -->age<!-- -->:<!-- --> <span style="color:#4ec9b0">u8</span>)<!-- --> <!-- -->-<!-- -->&gt;<!-- --> <span style="color:#569cd6">pub</span> <span style="color:#4ec9b0">bool</span> <!-- -->{<!-- -->
107    <span style="color:#6a9955">// Check is user an adult without revealing their real age</span>
108    <!-- -->age<!-- --> <!-- -->&gt;<!-- -->=<!-- --> <span style="color:#b5cea8">18</span>
109<!-- -->}</code></pre></div></div></div></div><div class="hidden xl:flex items-center justify-center gap-16 2xl:gap-24 max-w-7xl mx-auto"><div class="flex-shrink-0"><div class="text-card-foreground w-fit h-auto bg-[#1e1e1e] rounded-[12px] border border-solid border-[#333333] shadow-2xl overflow-hidden"><div class="flex items-center justify-between bg-[#2d2d2d] px-4 py-3 border-b border-[#404040]"><div class="flex items-center space-x-2"><div class="w-3 h-3 bg-[#ff5f57] rounded-full"></div><div class="w-3 h-3 bg-[#ffbd2e] rounded-full"></div><div class="w-3 h-3 bg-[#28ca42] rounded-full"></div></div><div class="text-[#cccccc] text-sm font-medium">main.nr</div><div class="w-[54px]"></div></div><div class="p-6 bg-[#1e1e1e]"><pre class="text-left text-sm md:text-lg font-mono leading-relaxed overflow-x-auto"><code class="text-[#d4d4d4]"><span style="color:#c586c0">fn</span> <span style="color:#dcdcaa">main</span>(<!-- -->age<!-- -->:<!-- --> <span style="color:#4ec9b0">u8</span>)<!-- --> <!-- -->-<!-- -->&gt;<!-- --> <span style="color:#569cd6">pub</span> <span style="color:#4ec9b0">bool</span> <!-- -->{<!-- -->
110    <span style="color:#6a9955">// Check is user an adult without revealing their real age</span>
111    <!-- -->age<!-- --> <!-- -->&gt;<!-- -->=<!-- --> <span style="color:#b5cea8">18</span>
112<!-- -->}</code></pre></div></div></div><div class="flex flex-col justify-center items-center"><h2 class="font-bold text-white text-4xl xl:text-5xl text-center tracking-[0.96px] leading-tight mb-4 whitespace-nowrap">Simple. Powerful. Private.</h2><p class="font-normal text-white text-lg xl:text-xl text-center tracking-[0.48px] leading-relaxed whitespace-nowrap">A zero-knowledge proof in just a few lines of code</p></div></div></section></div><section aria-labelledby="features-heading" class="hero-gradient flex flex-col items-center mt-[100px] px-4 py-16 md:py-24"><div class="w-full max-w-[1440px] mx-auto flex flex-col items-center"><h2 id="features-heading" class="font-bold text-white text-3xl md:text-4xl lg:text-5xl text-center tracking-[0.96px] leading-tight md:leading-[57.6px] mb-4 md:mb-5">Why Choose Noir?</h2><p class="w-full max-w-[700px] font-normal text-white text-lg md:text-xl lg:text-2xl text-center tracking-[0.48px] leading-relaxed md:leading-[28.8px] mb-8 md:mb-10">Noir combines the best of modern programming languages with the power of zero-knowledge proofs</p><div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4 md:gap-6 w-full max-w-7xl [&amp;&gt;*]:h-full"><div class="text-card-foreground shadow bg-[#191919] rounded-[16.33px] border border-solid border-[#ffffff80] flex flex-col h-full"><div class="p-4 md:p-6 flex flex-col flex-grow"><div class="w-[100px] h-[100px] bg-[#191919] mb-6 md:mb-8 flex items-center justify-center flex-shrink-0"><img class="w-full h-full object-contain" alt="" src="/assets/Noir-Face-DPguC35_.png" loading="lazy" decoding="async"/></div>
112<div class="min-h-[3.5rem] md:min-h-[4rem] mb-4 md:mb-6 flex items-end"><h3 class="font-bold text-white text-xl md:text-[26px] tracking-[0] leading-tight md:leading-[28.6px] break-words">Simple</h3></div><p class="font-normal text-[#cccccc] text-sm md:text-base tracking-[0] leading-relaxed md:leading-[19.2px] break-words overflow-wrap-anywhere flex-grow">Familiar syntax inspired by Rust, with accessible documentations and intuitive tooling.</p></div></div><div class="text-card-foreground shadow bg-[#191919] rounded-[16.33px] border border-solid border-[#ffffff80] flex flex-col h-full"><div class="p-4 md:p-6 flex flex-col flex-grow"><div class="w-[100px] h-[100px] bg-[#191919] mb-6 md:mb-8 flex items-center justify-center flex-shrink-0"><img class="w-full h-full object-contain" alt="" src="/assets/Computer-Dq0YrJTY.png" loading="lazy" decoding="async"/></div><div class="min-h-[3.5rem] md:min-h-[4rem] mb-4 md:mb-6 flex items-end"><h3 class="font-bold text-white text-xl md:text-[26px] tracking-[0] leading-tight md:leading-[28.6px] break-words">Performant</h3></div><p class="font-normal text-[#cccccc] text-sm md:text-base tracking-[0] leading-relaxed md:leading-[19.2px] break-words overflow-wrap-anywhere flex-grow">Optimized with best-in-class efficiency and minimal overhead for your ZK applications.</p></div></div><div class="text-card-foreground shadow bg-[#191919] rounded-[16.33px] border border-solid border-[#ffffff80] flex flex-col h-full"><div class="p-4 md:p-6 flex flex-col flex-grow"><div class="w-[100px] h-[100px] bg-[#191919] mb-6 md:mb-8 flex items-center justify-center flex-shrink-0"><img class="w-full h-full object-contain" alt="" src="/assets/Shooting-Star-DpkJY71e.png" loading="lazy" decoding="async"/></div><div class="min-h-[3.5rem] md:min-h-[4rem] mb-4 md:mb-6 flex items-end"><h3 class="font-bold text-white text-xl md:text-[26px] tracking-[0] leading-tight md:leading-[28.6px] break-words">Versatile</h3></div><p class="font-normal text-[#cccccc] text-sm md:text-base tracking-[0] leading-relaxed md:leading-[19.2px] break-words overflow-wrap-anywhere flex-grow">Deployable anywhere: blockchains, servers, browsers, mobile phones, or purely CLI if you wish.</p></div></div><div class="text-card-foreground shadow bg-[#191919] rounded-[16.33px] border border-solid border-[#ffffff80] flex flex-col h-full"><div class="p-4 md:p-6 flex flex-col flex-grow"><div class="w-[100px] h-[100px] bg-[#191919] mb-6 md:mb-8 flex items-center justify-center flex-shrink-0"><img class="w-full h-full object-contain" alt="" src="/assets/Planets-Djxk1imu.png" loading="lazy" decoding="async"/></div><div class="min-h-[3.5rem] md:min-h-[4rem] mb-4 md:mb-6 flex items-end"><h3 class="font-bold text-white text-xl md:text-[26px] tracking-[0] leading-tight md:leading-[28.6px] break-words">Backend Agnostic</h3></div><p class="font-normal text-[#cccccc] text-sm md:text-base tracking-[0] leading-relaxed md:leading-[19.2px] break-words overflow-wrap-anywhere flex-grow">Works with any proving backend. Access different proving technologies using the same code.</p></div></div></div></div></section><div class="bg-[#191919] max-w-[1440px] mx-auto"><section aria-labelledby="ecosystem-heading" class="flex flex-col items-center mt-[100px] md:mt-[130px] mb-16"><h2 id="ecosystem-heading" class="font-bold text-white text-3xl md:text-4xl lg:text-5xl text-center tracking-[0.96px] leading-tight md:leading-[57.6px] mb-6 md:mb-8 px-4">Ecosystem</h2><p class="font-normal text-white text-lg md:text-xl lg:text-2xl text-center tracking-[0.48px] leading-relaxed md:leading-[28.8px] max-w-[800px] mx-auto mb-12 md:mb-16 px-4">Projects building with Noir.</p><div class="w-full overflow-x-auto overscroll-x-contain cursor-grab select-none py-4 [scrollbar-width:none] [-ms-overflow-style:none] [&amp;::-webkit-scrollbar]:hidden" style="mask-image:linear-gradient(to right, transparent, black 5%, black 95%, transparent);-webkit-mask-image:linear-gradient(to right, transparent, black 5%, black 95%, transparent)"><div class="flex w-max gap-4 md:gap-5 items-stretch px-4"><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://www.google.com/s2/favicons?domain=payy.network&amp;sz=256" alt="Payy logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/>
112<span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">P</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Payy</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private stablecoin payments</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://www.google.com/s2/favicons?domain=developers.stellar.org&amp;sz=256" alt="Stellar Confidential Tokens logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">S</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Stellar Confidential Tokens</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">Stellar token standard with private balances and transfer amounts</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://github.com/zerosats.png?size=400" alt="Zerosats logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Zerosats</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private Bitcoin payments</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #FF84014
1120 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#FF840180"><img src="https://www.google.com/s2/favicons?domain=anoncast.org&amp;sz=256" alt="anoncast logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">A</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">anoncast</h3><span class="font-medium text-xs shrink-0" style="color:#FF8401">Social</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">anonymous X and Farcaster posting</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5B9DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5B9DFF80"><img src="https://www.google.com/s2/favicons?domain=aztec.network&amp;sz=256" alt="Aztec logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">A</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Aztec</h3><span class="font-medium text-xs shrink-0" style="color:#5B9DFF">Infrastructure</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">privacy-first blockchain supporting smart contracts in Noir</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5B9DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5B9DFF80"><img src="https://www.google.com/s2/favicons?domain=theinterfold.com&amp;sz=256" alt="Interfold logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">I</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Interfold</h3><span class="font-medium text-xs shrink-0" style="color:#5B9DFF">Infrastructure</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private shared state protocol</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zkpassport.id&amp;sz=256" alt="ZKPassport logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/>
112<span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZKPassport</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving information in national passports</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zkproofport.app&amp;sz=256" alt="ZKProofport logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZKProofport</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving Coinbase attestations, Google Workspace and Microsoft 365 memberships</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zk.email&amp;sz=256" alt="ZK Email logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZK Email</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving email senders and/or contents</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://www.google.com/s2/favicons?domain=payy.network&amp;sz=256" alt="Payy logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/>
112<span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">P</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Payy</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private stablecoin payments</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://www.google.com/s2/favicons?domain=developers.stellar.org&amp;sz=256" alt="Stellar Confidential Tokens logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">S</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Stellar Confidential Tokens</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">Stellar token standard with private balances and transfer amounts</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://github.com/zerosats.png?size=400" alt="Zerosats logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Zerosats</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private Bitcoin payments</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #FF84014
1120 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#FF840180"><img src="https://www.google.com/s2/favicons?domain=anoncast.org&amp;sz=256" alt="anoncast logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">A</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">anoncast</h3><span class="font-medium text-xs shrink-0" style="color:#FF8401">Social</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">anonymous X and Farcaster posting</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5B9DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5B9DFF80"><img src="https://www.google.com/s2/favicons?domain=aztec.network&amp;sz=256" alt="Aztec logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">A</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Aztec</h3><span class="font-medium text-xs shrink-0" style="color:#5B9DFF">Infrastructure</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">privacy-first blockchain supporting smart contracts in Noir</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5B9DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5B9DFF80"><img src="https://www.google.com/s2/favicons?domain=theinterfold.com&amp;sz=256" alt="Interfold logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">I</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Interfold</h3><span class="font-medium text-xs shrink-0" style="color:#5B9DFF">Infrastructure</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private shared state protocol</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zkpassport.id&amp;sz=256" alt="ZKPassport logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/>
112<span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZKPassport</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving information in national passports</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zkproofport.app&amp;sz=256" alt="ZKProofport logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZKProofport</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving Coinbase attestations, Google Workspace and Microsoft 365 memberships</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zk.email&amp;sz=256" alt="ZK Email logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZK Email</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving email senders and/or contents</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://www.google.com/s2/favicons?domain=payy.network&amp;sz=256" alt="Payy logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/>
112<span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">P</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Payy</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private stablecoin payments</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://www.google.com/s2/favicons?domain=developers.stellar.org&amp;sz=256" alt="Stellar Confidential Tokens logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">S</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Stellar Confidential Tokens</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">Stellar token standard with private balances and transfer amounts</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #C77DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#C77DFF80"><img src="https://github.com/zerosats.png?size=400" alt="Zerosats logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Zerosats</h3><span class="font-medium text-xs shrink-0" style="color:#C77DFF">Finance</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private Bitcoin payments</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #FF84014
1120 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#FF840180"><img src="https://www.google.com/s2/favicons?domain=anoncast.org&amp;sz=256" alt="anoncast logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">A</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">anoncast</h3><span class="font-medium text-xs shrink-0" style="color:#FF8401">Social</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">anonymous X and Farcaster posting</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5B9DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5B9DFF80"><img src="https://www.google.com/s2/favicons?domain=aztec.network&amp;sz=256" alt="Aztec logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">A</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Aztec</h3><span class="font-medium text-xs shrink-0" style="color:#5B9DFF">Infrastructure</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">privacy-first blockchain supporting smart contracts in Noir</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5B9DFF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5B9DFF80"><img src="https://www.google.com/s2/favicons?domain=theinterfold.com&amp;sz=256" alt="Interfold logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">I</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">Interfold</h3><span class="font-medium text-xs shrink-0" style="color:#5B9DFF">Infrastructure</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">private shared state protocol</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zkpassport.id&amp;sz=256" alt="ZKPassport logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/>
112<span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZKPassport</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving information in national passports</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zkproofport.app&amp;sz=256" alt="ZKProofport logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZKProofport</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving Coinbase attestations, Google Workspace and Microsoft 365 memberships</p></div><span class="sr-only">(opens in new tab)</span></a><a target="_blank" rel="noopener noreferrer" draggable="false" aria-hidden="true" tabindex="-1" class="group block w-[82vw] max-w-[300px] md:w-[330px] shrink-0 h-full bg-[#191919] rounded-[16px] border border-[#ffffff26] overflow-hidden select-none transition-transform duration-300 hover:-translate-y-1 focus-visible:outline-none focus-visible:ring-0 focus-visible:[outline:2px_solid_white] focus-visible:[outline-offset:2px]" style="box-shadow:0 8px 24px rgba(0,0,0,0.35)"><div class="relative h-[110px] flex items-center justify-center" style="background:linear-gradient(135deg, #5EE7FF40 0%, #191919 85%)"><div class="w-16 h-16 rounded-[12px] overflow-hidden border bg-white flex items-center justify-center shrink-0 p-1.5" style="border-color:#5EE7FF80"><img src="https://www.google.com/s2/favicons?domain=zk.email&amp;sz=256" alt="ZK Email logo" class="w-full h-full object-contain pointer-events-none" draggable="false" loading="lazy" decoding="async"/><span class="w-full h-full items-center justify-center font-bold text-[#191919] text-2xl" style="display:none">Z</span></div></div><div class="p-6 flex flex-col"><div class="flex items-center justify-between gap-2 mb-2"><h3 class="font-bold text-white text-lg md:text-xl truncate">ZK Email</h3><span class="font-medium text-xs shrink-0" style="color:#5EE7FF">SDK</span></div><p class="font-normal text-[#cccccc] text-sm md:text-base leading-relaxed line-clamp-2 min-h-[3.25em]">proving email senders and/or contents</p></div><span class="sr-only">(opens in new tab)</span></a></div></div><div class="mt-12 md:mt-16 px-4"><a href="https://github.com/noir-lang/awesome-noir" target="_blank" rel="noopener noreferrer" class="inline-flex items-center justify-center gap-2 whitespace-nowrap focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 shadow-sm hover:bg-accent hover:text-accent-foreground h-[50px] md:h-[60px] px-6 md:px-[34.37px] py-4 md:py-[20.42px] bg-[#191919] rounded-[165.33px] border border-solid border-[#ffffff80] hover:border-[#ffffff] font-normal text-white text-lg md:text-xl tracking-[0.40px] leading-[24.0px] transition-all duration-200">View on Awesome Noir<span class="sr-only">(opens in new tab)</span></a></div></section><section aria-labelledby="contributors-heading" class="flex flex-col items-center mt-[100px] md:mt-[130px] mb-16 px-4"><h2 id="contributors-heading" class="font-bold text-white text-3xl md:text-4xl lg:text-5xl text-center tracking-[0.96px] leading-tight mb-12 md:mb-8">Our Top Contributors</h2><p class="font-normal text-white text-lg md:text-xl lg:text-2xl text-center tracking-[0.48px] leading-relaxed md:leading-[28.8px] max-w-[800px] mx-auto mb-16 md:mb-20">Noir is fully open sourced with a 100+ contributor community. We believe in building cryptographic tools that are transparent, auditable, and accessible to everyone.</p><div class="flex flex-wrap justify-center gap-8 md:gap-12 w-full max-w-4xl"><div class="flex flex-col items-center group cursor-pointer"><a target="_blank" rel="noopener noreferrer" class="transition-transform duration-200 group-hover:scale-110"><div class="w-20 h-20 md:w-24 md:h-24 lg:w-28 lg:h-28 rounded-full overflow-hidden border-4 border-[#ffffff20] group-hover:border-[#ffffff60] transition-colors duration-200 bg-[#191919]"><img src="https://avatars.githubusercontent.com/u/15848336?v=4" alt="" class="w-full h-full object-cover" loading="lazy" decoding="async"/></div><span class="sr-only">TomAFrench<!-- -->&#x27;s GitHub profile (opens in new tab)</span></a><p class="mt-3 font-medium text-white text-sm md:text-base tracking-[0.32px] leading-4">2,423<!-- --> commits</p><p class="mt-1 font-normal text-[#ffffff80] text-xs md:text-sm tracking-[0.24px] leading-4">@<!-- -->TomAFrench</p></div><div class="flex flex-col items-center group cursor-pointer"><a target="_blank" rel="noopener noreferrer" class="transition-transform duration-200 group-hover:scale-110"><div class="w-20 h-20 md:w-24 md:h-24 lg:w-28 lg:h-28 rounded-full overflow-hidden border-4 border-[#ffffff20] group-hover:border-[#ffffff60] transition-colors duration-200 bg-[#191919]"><img src="https://avatars.githubusercontent.com/u/37423678?v=4" alt="" class="w-full h-full object-cover" loading="lazy" decoding="async"/></div><span class="sr-only">kevaundray<!-- -->&#x27;s GitHub profile (opens in new tab)</span></a><p class="mt-3 font-medium text-white text-sm md:text-base tracking-[0.32px] leading-4">1,496<!-- --> commits</p><p class="mt-1 font-normal text-[#ffffff80] text-xs md:text-sm tracking-[0.24px] leading-4">@<!-- -->kevaundray</p></div><div class="flex flex-col items-center group cursor-pointer"><a target="_blank" rel="noopener noreferrer" class="transition-transform duration-200 group-hover:scale-110"><div class="w-20 h-20 md:w-24 md:h-24 lg:w-28 lg:h-28 rounded-full overflow-hidden border-4 border-[#ffffff20] group-hover:border-[#ffffff60] transition-colors duration-200 bg-[#191919]"><img src="https://avatars.githubusercontent.com/u/209371?v=4" alt="" class="w-full h-full object-cover" loading="lazy" decoding="async"/></div><span class="sr-only">asterite<!-- -->&#x27;s GitHub profile (opens in new tab)</span></a><p class="mt-3 font-medium text-white text-sm md:text-base tracking-[0.32px] leading-4">1,311<!-- --> commits</p><p class="mt-1 font-normal text-[#ffffff80] text-xs md:text-sm tracking-[0.24px] leading-4">@<!-- -->asterite</p></div><div class="flex flex-col items-center group cursor-pointer"><a target="_blank" rel="noopener noreferrer" class="transition-transform duration-200 group-hover:scale-110"><div class="w-20 h-20 md:w-24 md:h-24 lg:w-28 lg:h-28 rounded-full overflow-hidden border-4 border-[#ffffff20] group-hover:border-[#ffffff60] transition-colors duration-200 bg-[#191919]"><img src="https://avatars.githubusercontent.com/u/43554004?v=4" alt="" class="w-full h-full object-cover" loading="lazy" decoding="async"/></div><span class="sr-only">vezenovm<!-- -->&#x27;s GitHub profile (opens in new tab)</span></a><p class="mt-3 font-medium text-white text-sm md:text-base tracking-[0.32px] leading-4">780<!-- --> commits</p><p class="mt-1 font-normal text-[#ffffff80] text-xs md:text-sm tracking-[0.24px] leading-4">@<!-- -->vezenovm</p></div><div class="flex flex-col items-center group cursor-pointer"><a target="_blank" rel="noopener noreferrer" class="transition-transform duration-200 group-hover:scale-110"><div class="w-20 h-20 md:w-24 md:h-24 lg:w-28 lg:h-28 rounded-full overflow-hidden border-4 border-[#ffffff20] group-hover:border-[#ffffff60] transition-colors duration-200 bg-[#191919]"><img src="https://avatars.githubusercontent.com/u/47281315?v=4" alt="" class="w-full h-full object-cover" loading="lazy" decoding="async"/></div><span class="sr-only">guipublic<!-- -->&#x27;s GitHub profile (opens in new tab)</span></a><p class="mt-3 font-medium text-white text-sm md:text-base tracking-[0.32px] leading-4">637<!-- --> commits</p><p class="mt-1 font-normal text-[#ffffff80] text-xs md:text-sm tracking-[0.24px] leading-4">@<!-- -->guipublic</p></div></div><div class="mt-8 md:mt-12"><a href="https://github.com/noir-lang/noir/graphs/contributors?all=1" target="_blank" rel="noopener noreferrer" class="inline-flex items-center justify-center gap-2 whitespace-nowrap focu
112s-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 shadow-sm hover:bg-accent hover:text-accent-foreground h-[50px] md:h-[60px] px-6 md:px-[34.37px] py-4 md:py-[20.42px] bg-[#191919] rounded-[165.33px] border border-solid border-[#ffffff80] hover:border-[#ffffff] font-normal text-white text-lg md:text-xl tracking-[0.40px] leading-[24.0px] transition-all duration-200">View on GitHub<span class="sr-only">(opens in new tab)</span></a></div></section><!--$--><section aria-labelledby="newsletter-heading" class="flex flex-col items-center mt-[100px] md:mt-[130px] mb-16 px-4"><div class="w-full max-w-2xl text-center"><h2 id="newsletter-heading" class="font-bold text-white text-3xl md:text-4xl lg:text-5xl text-center tracking-[0.96px] leading-tight mb-4">Stay Updated</h2><p class="font-normal text-white text-lg md:text-xl lg:text-2xl text-center tracking-[0.48px] leading-relaxed mb-8">Get the latest updates on Noir development, new features, and community news.</p><form novalidate="" class="flex flex-col sm:flex-row gap-4 justify-center"><div class="space-y-2 flex-1 max-w-md"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 sr-only" for=":Rfou:-form-item">Email address</label><input type="email" class="flex w-full py-2 ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm h-[50px] md:h-[60px] px-6 bg-[#191919] border border-[#ffffff40] text-white placeholder:text-[#ffffffb3] rounded-[165.33px] text-lg focus:border-[#8019B8] focus:ring-[#8019B8]" placeholder="Enter your email" name="email" autoComplete="email" id=":Rfou:-form-item" aria-describedby=":Rfou:-form-item-description" aria-invalid="false" value=""/></div><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 shadow hover:border hover:background-transparent hover:text-primary-foreground py-2 h-[50px] md:h-[60px] px-8 bg-[#8019B8] hover:bg-[#6B1396] text-white rounded-[165.33px] font-normal text-lg md:text-xl tracking-[0.40px] transition-colors disabled:opacity-50 disabled:cursor-not-allowed" type="submit">Subscribe</button></form></div></section><!--/$--></div></div></main><footer class="bg-[#191919] border-t border-[#ffffff10] mt-20"><div class="max-w-[1200px] mx-auto px-4 md:px-8 py-12 md:py-16"><div class="grid grid-cols-1 lg:grid-cols-2 gap-8 md:gap-12 mb-8 items-end"><div class="flex items-center justify-center lg:justify-start"><img src="/assets/noir-square-logo-BzirMu8K.png" alt="Noir - The Programming Language for Private Apps" class="w-full max-w-[250px] h-auto" width="337" height="403" loading="lazy" decoding="async"/></div><ul class="flex justify-center lg:justify-end items-end gap-6"><li><a href="https://twitter.com/NoirLang" target="_blank" rel="noopener noreferrer" aria-label="X (opens in new tab)" class="text-[#ffffff80] hover:text-white transition-colors duration-200 inline-flex"><svg viewBox="0 0 24 24" fill="currentColor" class="w-8 h-8" aria-hidden="true"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path></svg></a></li><li><a href="https://discord.com/invite/JtqzkdeQ6G" target="_blank" rel="noopener noreferrer" aria-label="Discord (opens in new tab)" class="text-[#ffffff80] hover:text-white transition-colors duration-200 inline-flex"><svg viewBox="0 0 24 24" fill="currentColor" class="w-8 h-8" aria-hidden="true"><path d="M20.317 4.369a19.79 19.79 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.211.375-.444.864-.608 1.249a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.036A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.1 13.1 0 0 1-1.872-.892.077.077 0 0 1-.008-.128c.126-.094.252-.192.372-.291a.074.074 0 0 1 .077-.01c3.928 1.793 8.18 
1121.793 12.062 0a.074.074 0 0 1 .078.009c.12.099.246.198.373.292a.077.077 0 0 1-.006.127 12.3 12.3 0 0 1-1.873.891.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.84 19.84 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.028zM8.02 15.331c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z"></path></svg></a></li><li><a href="https://github.com/noir-lang/noir" target="_blank" rel="noopener noreferrer" aria-label="GitHub (opens in new tab)" class="text-[#ffffff80] hover:text-white transition-colors duration-200 inline-flex"><svg viewBox="0 0 24 24" fill="currentColor" class="w-8 h-8" aria-hidden="true"><path d="M12 .5C5.37.5 0 5.78 0 12.29c0 5.21 3.44 9.63 8.21 11.19.6.11.82-.25.82-.56 0-.28-.01-1.02-.02-2-3.34.71-4.04-1.58-4.04-1.58-.55-1.36-1.34-1.73-1.34-1.73-1.09-.73.08-.72.08-.72 1.2.08 1.84 1.21 1.84 1.21 1.07 1.8 2.81 1.28 3.5.98.11-.76.42-1.28.76-1.58-2.67-.3-5.47-1.31-5.47-5.83 0-1.29.47-2.34 1.24-3.17-.12-.3-.54-1.51.12-3.15 0 0 1.01-.32 3.3 1.21a11.6 11.6 0 0 1 3-.4c1.02 0 2.05.13 3 .4 2.29-1.53 3.3-1.21 3.3-1.21.66 1.64.24 2.85.12 3.15.77.83 1.24 1.88 1.24 3.17 0 4.53-2.81 5.53-5.49 5.82.43.36.81 1.08.81 2.18 0 1.58-.01 2.85-.01 3.24 0 .31.21.68.83.56A12.01 12.01 0 0 0 24 12.29C24 5.78 18.63.5 12 .5z"></path></svg></a></li></ul></div></div></footer></div></div></div></div>
113  </body>
114</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.