PageSourceSearch

https://adonisjs.com/wall-of-love

html adonisjs.com collected 2026-10-02 16:27:36 UTC 77,992 bytes, 1,389 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-us" class="dark-theme bg-canvas">
3  <head>
4    <meta charset="utf-8" />
5    <meta name="viewport" content="width=device-width, initial-scale=1" />
6    <title>What developers say about AdonisJS</title><meta name="description" content="See what developers are saying about AdonisJS. Real testimonials and feedback from teams building applications with the framework" />
7<link rel="canonical" href="https://adonisjs.com/wall-of-love" />
8<meta name="twitter:title" content="What developers say about AdonisJS" />
9<meta name="twitter:description" content="See what developers are saying about AdonisJS. Real testimonials and feedback from teams building applications with the framework" />
10<meta name="twitter:card" content="summary_large_image" />
11<meta name="twitter:site" content="@adonisframework" />
12<meta name="twitter:creator" content="@adonisframework" />
13<meta property="og:title" content="What developers say about AdonisJS" />
14<meta property="og:description" content="See what developers are saying about AdonisJS. Real testimonials and feedback from teams building applications with the framework" />
15<meta property="og:url" content="https://adonisjs.com/wall-of-love" />
16  <meta name="twitter:image" content="https://adonisjs.com/assets/wall-of-love-C10A5VC0.jpg" />
17  <meta property="og:image" content="https://adonisjs.com/assets/wall-of-love-C10A5VC0.jpg" />
18
19<meta property="og:type" content="website" />
20
21<link
22  rel="apple-touch-icon"
23  sizes="57x57"
24  href="/assets/apple-icon-57x57-xYBJLDWT.png"
25/>
26<link
27  rel="apple-touch-icon"
28  sizes="60x60"
29  href="/assets/apple-icon-60x60-D6_J_159.png"
30/>
31<link
32  rel="apple-touch-icon"
33  sizes="72x72"
34  href="/assets/apple-icon-72x72-CwGQ7wCB.png"
35/>
36<link
37  rel="apple-touch-icon"
38  sizes="76x76"
39  href="/assets/apple-icon-76x76-aYOM4d7G.png"
40/>
41<link
42  rel="apple-touch-icon"
43  sizes="114x114"
44  href="/assets/apple-icon-114x114-Buyr7H-g.png"
45/>
46<link
47  rel="apple-touch-icon"
48  sizes="120x120"
49  href="/assets/apple-icon-120x120-ribyuC-s.png"
50/>
51<link
52  rel="apple-touch-icon"
53  sizes="144x144"
54  href="/assets/ms-icon-144x144-CS5pvIdW.png"
55/>
56<link
57  rel="apple-touch-icon"
58  sizes="152x152"
59  href="/assets/apple-icon-152x152-5WCCzTD-.png"
60/>
61<link
62  rel="apple-touch-icon"
63  sizes="180x180"
64  href="/assets/apple-icon-180x180-9a7N4Jr0.png"
65/>
66<link
67  rel="icon"
68  type="image/png"
69  sizes="192x192"
70  href="/assets/android-icon-192x192-BsKbegpC.png"
71/>
72<link
73  rel="icon"
74  type="image/png"
75  sizes="32x32"
76  href="/assets/favicon-32x32-B8wNBOa_.png"
77/>
78<link
79  rel="icon"
80  type="image/png"
81  sizes="96x96"
82  href="/assets/favicon-96x96-cvA9CZU9.png"
83/>
84<link
85  rel="icon"
86  type="image/png"
87  sizes="16x16"
88  href="/assets/favicon-16x16-BIWFZ2zQ.png"
89/>
90<link rel="manifest" href="/assets/icons_manifest--KzPhL4h.json" />
91<meta name="msapplication-TileColor" content="#09090b" />
92<meta
93  name="msapplication-TileImage"
94  content="/assets/ms-icon-144x144-CS5pvIdW.png"
95/>
96<meta name="theme-color" content="#09090b" />
97
98<script>
99  (() => {
100    const root = document.documentElement;
101    let storedTheme = null;
102
103    try {
104      storedTheme = localStorage.getItem('adonisjs:theme');
105    } catch {}
106
107    const theme =
108      storedTheme === 'light' || storedTheme === 'dark'
109        ? storedTheme
110        : window.matchMedia('(prefers-color-scheme: light)').matches
111          ? 'light'
112          : 'dark';
113
114    root.classList.remove('light-theme', 'dark-theme');
115    root.classList.add(`${theme}-theme`);
116    root.dataset.theme = theme;
117
118    document
119      .querySelector('meta[name="theme-color"]')
120      ?.setAttribute('content', theme === 'light' ? '#fafafa' : '#09090b');
121  })();
122</script>
122
123
124<link rel="preload" as="style" href="/assets/app-Lcq2UOUK.css"/>
125<link rel="preload" as="style" href="/assets/app-q6sJD9cd.css"/>
126<link rel="modulepreload" href="/assets/app-De46YKyw.js"/>
127<link rel="stylesheet" href="/assets/app-q6sJD9cd.css"/>
128<script type="module" defer src="/assets/app-De46YKyw.js"></script>
128
129<link rel="stylesheet" href="/assets/app-Lcq2UOUK.css"/>
130
131  </head>
132
133  <body class="font-sans antialiased text-foreground-muted relative">
134<div x-data class="relative bg-highlighter">
135  <p class="px-12 py-2.5 text-center text-13 sm:text-14 font-semibold text-highlighter-ink">
136    Help shape what we build next. Take the
137    <a
138      href="https://tally.so/r/obgR8M"
139      target="_blank"
140      rel="noopener noreferrer"
141      class="underline underline-offset-3 hover:opacity-75 transition-opacity"
142    >
143      AdonisJS developer survey.
144    </a>
145  </p>
146  <button
147    type="button"
148    class="absolute right-2.5 top-1/2 -translate-y-1/2 flex size-7 items-center justify-center cursor-pointer text-highlighter-ink hover:bg-highlighter-ink/10 transition-colors"
149    aria-label="Dismiss announcement"
150    @click="localStorage.setItem('announcement:dev-survey', 'dismissed'); $root.remove()"
151  ><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-4 h-4"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M18 6L6 18M6 6l12 12"/></svg>
152  </button>
153</div>
154<script>
155  if (localStorage.getItem('announcement:dev-survey') === 'dismissed') {
156    document.currentScript.previousElementSibling.remove()
157  }
158</script>
158
159
160<header class="sticky inset-x-0 top-0 border-b border-divider z-10 backdrop-blur-3xl bg-nav-bg">
161  <div class="container-full mx-auto px-5 lg:px-10 py-4 flex items-center justify-between h-18">
162    <div class="text-foreground">
163<a href="/" class="block">
164  <svg width="107" height="33" viewBox="0 0 107 33" fill="none" xmlns="http://www.w3.org/2000/svg">
165  <g clip-path="url(#clip0_1245_6827)">
166    <path
167      fill-rule="evenodd"
168      clip-rule="evenodd"
169      d="M0 16.3331C0 29.506 3.16017 32.6662 16.3331 32.6662C29.506 32.6662 32.6662 29.506 32.6662 16.3331C32.6662 3.16017 29.506 0 16.3331 0C3.16017 0 0 3.16017 0 16.3331ZM6.58646 19.7261L11.7093 8.08338C12.5742 6.12075 14.2374 5.05627 16.3331 5.05627C18.4288 5.05627 20.092 6.12075 20.9569 8.08338L26.0797 19.7261C26.3126 20.2916 26.5122 21.0235 26.5122 21.6555C26.5122 24.5495 24.483 26.5787 21.589 26.5787C20.6032 26.5787 19.8203 26.3271 19.0278 26.0725C18.2158 25.8116 17.3937 25.5475 16.3331 25.5475C15.2847 25.5475 14.4426 25.814 13.6145 26.076C12.8136 26.3294 12.0258 26.5787 11.0772 26.5787C8.18318 26.5787 6.15402 24.5495 6.15402 21.6555C6.15402 21.0235 6.35361 20.2916 6.58646 19.7261ZM16.3331 10.1125L11.2768 21.5557C12.7737 20.8571 14.5035 20.5245 16.3331 20.5245C18.0961 20.5245 19.8924 20.8571 21.3228 21.5557L16.3331 10.1125Z"
170      fill="currentColor"
171    />
172    <path
173      fill-rule="evenodd"
174      clip-rule="evenodd"
175      d="M93.7543 8.07967C92.6202 8.07967 91.8012 8.88296 91.8012 10.0013C91.8012 11.1195 92.6202 11.9228 93.7543 11.9228C94.8883 11.9228 95.7074 11.1195 95.7074 10.0013C95.7074 8.88296 94.8883 8.07967 93.7543 8.07967ZM58.0314 24.5865C55.0073 24.5865 52.8179 22.3504 52.8179 18.8532C52.8179 15.293 55.0073 13.0569 58.0314 13.0569C59.4333 13.0569 60.4728 13.5294 61.0871 14.4587V8.5837H64.2373V24.3345H61.0871V23.2162C60.4886 24.1297 59.449 24.5865 58.0314 24.5865ZM56.0311 18.8532C56.0311 16.9001 57.0864 15.6243 58.693 15.6243C60.3153 15.6243 61.3549 16.8843 61.3549 18.8374C61.3549 20.759 60.3153 22.0034 58.693 22.0034C57.0864 22.0034 56.0311 20.759 56.0311 18.8532ZM69.183 18.8217C69.183 16.8843 70.2383 15.64 71.8134 15.64C73.4042 15.64 74.4595 16.8843 74.4595 18.8217C74.4595 20.759 73.4042 22.0034 71.8134 22.0034C70.2383 22.0034 69.183 20.759 69.183 18.8217ZM103.898 21.3261C103.898 21.9088 103.457 22.2554 102.338 22.2554C101.078 22.2554 100.291 21.5938 100.291 20.7905H97.1407C97.2195 22.9642 99.2828 24.5865 102.275 24.5865C105.111 24.5865 106.922 23.3264 106.922 21.0898C106.922 19.4202 105.851 18.2547 103.725 17.8294L101.441 17.3726C100.748 17.2309 100.338 16.8843 100.338 16.4276C100.338 15.7503 101.031 15.388 101.913 15.388C103.173 15.388 103.662 15.9708 103.662 16.6638H106.654C106.575 14.6162 104.969 13.0569 101.976 13.0569C99.1883 13.0569 97.2982 14.4587 97.2982 16.5851C97.2982 18.5067 98.5425 19.373 100.401 19.7667L102.669 20.255C103.41 20.4125 103.898 20.7275 103.898 21.3261ZM95.3451 24.3345H92.1949V13.3089H95.3451V24.3345ZM82.5555 13.3089V14.4587C83.3587 13.5294 84.4298 13.0569 85.7529 13.0569C88.2257 13.0569 89.8323 14.6635 89.8323 17.1521V24.3345H86.6822V17.8136C86.6822 16.4748 85.9261 15.6715 84.6188 15.6715C83.3115 15.6715 82.5555 16.4748 82.5555 17.8136V24.3345H79.4053V13.3089H82.5555ZM71.8134 13.0569C68.4585 13.0569 65.9699 15.4825 65.9699 18.8217C65.9699 22.1609 68.4585 24.5865 71.8134 24.5865C75.1841 24.5865 77.6727 22.1609 77.6727 18.8217C77.6727 15.4825 75.1841 13.0569 71.8134 13.0569ZM45.5411 15.6243C43.9345 15.6243 42.8792 16.9001 42.8792 18.8532C42.8792 20.759 43.9345 22.0034 45.5411 22.0034C47.1634 22.0034 48.2029 20.759 48.2029 18.8374C48.2029 16.8843 47.1634 15.6243 45.5411 15.6243ZM39.666 18.8532C39.666 22.3504 41.8554 24.5865 44.8638 24.5865C46.2971 24.5865 47.3209 24.1297 47.9352 23.2162V24.3345H51.0853V13.3089H47.9352V14.4587C47.3051 13.5294 46.2656 13.0569 44.8638 13.0569C41.8554 13.0569 39.666 15.293 39.666 18.8532Z"
176      fill="currentColor"
177    />
178  </g>
179  <defs>
180    <clipPath id="clip0_1245_6827">
181      <rect width="106.922" height="32.6662" fill="currentColor" />
182    </clipPath>
183  </defs>
184</svg>
185
186        <span class="sr-only">Home page</span>
187</a>
188
189    </div>
190
191    <div class="flex items-center gap-7">
192      <nav class="flex items-center gap-7">
193        <ul class="hidden md:flex items-center gap-5">
194  <li>
195<a href="/packages" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
196        <span>Packages</span>
197</a>
198
199  </li>
200  <li>
201<a href="/wall-of-love" class="current md:text-sm hover:text-foreground transition-colors text-foreground">
202        <span>Wall of love</span>
203</a>
204
205  </li>
206  <li>
207<a href="https://docs.adonisjs.com" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted" rel="noopener noreferrer" target="_blank">
208        <span>Docs</span>
209</a>
210
211  </li>
212  <li>
213<a href="/blog" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
214        <span>Blog</span>
215</a>
216
217  </li>
218  <li>
219<a href="/roadmap" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
220        <span>Roadmap</span>
221</a>
222
223  </li>
224  <li>
225<a href="/sponsor" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
226        <span>Sponsor</span>
227</a>
228
229  </li>
230  <li>
231<a href="/about" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
232        <span>About</span>
233</a>
234
235  </li>
236
237        </ul>
238
239        <ul class="flex items-center gap-5">
240          <li x-data="themeSwitcher" class="flex items-center">
241            <button
242              type="button"
243              @click="toggle()"
244              :aria-label="theme === 'dark' ? 'Switch to light theme' : 'Switch to dark theme'"
245              :title="theme === 'dark' ? 'Switch to light theme' : 'Switch to dark theme'"
246              class="inline-flex size-8 cursor-pointer items-center justify-center rounded-full border border-control-line bg-control text-foreground-muted transition-colors hover:border-control-line-hover hover:bg-control-hover hover:text-foreground"
247            >
248              <span x-cloak x-show="theme === 'dark'"><svg width="1em" height="1em" viewBox="0 0 24 24" class="size-4.5"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M16 12a4 4 0 1 1-8 0a4 4 0 0 1 8 0m-4-9v2m0 14.004v2M5 12H3m18 0h-2m0-7l-2 2M5 5l2 2m0 10l-2 2m14 0l-2-2"/></svg>
249              </span>
250              <span x-cloak x-show="theme === 'light'"><svg width="1em" height="1em" viewBox="0 0 24 24" class="size-4.5"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M21 12.808c-.5 5.347-5.849 9.14-11.107 7.983C-.078 18.6 1.15 3.909 11.11 3C6.395 9.296 14.619 17.462 21 12.808"/></svg>
251              </span>
252            </button>
253          </li>
254
255          <li>
256  <a class="font-medium items-center justify-center cursor-pointer transition-colors text-center uppercase inline-flex bg-accent hover:bg-accent-hover focus:bg-accent-hover text-accent-contrast font-mono focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-indigo-400 px-3 py-1.5 text-xs" target="_blank" href="https://plus.adonisjs.com">
257      Plus
258  </a>
259
260          </li>
261
262          <li class="hidden md:block">
263<a href="https://github.com/adonisjs/core" class="flex items-center gap-2 text-foreground-muted hover:text-foreground transition-colors" rel="noopener noreferrer" target="_blank">
264  <svg width="20px" height="20px" viewBox="0 0 20 20"><path fill="currentColor" d="M20 10.25q0 3.351-1.908 6.027t-4.928 3.703q-.352.068-.514-.093a.54.54 0 0 1-.163-.4V16.67q0-1.295-.677-1.895a9 9 0 0 0 1.335-.24q.591-.16 1.223-.52a3.7 3.7 0 0 0 1.055-.888q.423-.528.69-1.402t.267-2.008q0-1.616-1.028-2.75q.48-1.214-.105-2.723q-.364-.12-1.054.147a7 7 0 0 0-1.198.587l-.495.32a9 9 0 0 0-2.5-.346a9 9 0 0 0-2.5.347a12 12 0 0 0-.553-.36q-.345-.214-1.088-.514q-.741-.3-1.12-.18q-.572 1.507-.09 2.722q-1.03 1.134-1.03 2.75q0 1.134.268 2.002q.267.867.683 1.401a3.5 3.5 0 0 0 1.048.894q.632.36 1.224.52q.593.162 1.335.241q-.52.48-.638 1.375a2.5 2.5 0 0 1-.586.2a3.6 3.6 0 0 1-.742.067q-.43 0-.853-.287q-.423-.288-.723-.834a2.1 2.1 0 0 0-.631-.694q-.384-.267-.645-.32l-.26-.04q-.273 0-.378.06t-.065.153a.7.7 0 0 0 .117.187a1 1 0 0 0 .17.16l.09.066q.287.135.567.508q.28.374.41.68l.13.307q.17.507.574.821q.404.315.872.4q.468.087.905.094q.436.006.723-.047l.299-.053q0 .507.007 1.188l.006.72q0 .24-.17.4q-.168.162-.52.094q-3.021-1.028-4.928-3.703Q0 13.6 0 10.25q0-2.79 1.341-5.145a10.1 10.1 0 0 1 3.64-3.73A9.6 9.6 0 0 1 10 0a9.6 9.6 0 0 1 5.02 1.375a10.1 10.1 0 0 1 3.639 3.73Q20 7.461 20 10.25"/></svg>
265              <span class="font-mono text-14 font-semibold">19K</span>
266              <span class="sr-only">Star adonisjs/core on GitHub</span>
267</a>
268
269          </li>
270
271          <li x-data="" class="flex self-center md:hidden">
272            <button @click.prevent="$dispatch('toggle-mobile-nav')"><svg width="20px" height="20px" viewBox="0 0 24 24" class="text-foreground-muted hover:text-foreground transition-colors"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M4.5 6.5h15M4.5 12h15m-15 5.5h15"/></svg>
273              <span class="sr-only">Open menu</span>
274            </button>
275          </li>
276        </ul>
277      </nav>
278    </div>
279  </div>
280</header>
281
282
283<div
284  x-data="{ isOpen: false }"
285  x-cloak
286  @toggle-mobile-nav.window="isOpen = !isOpen"
287  x-show="isOpen"
288  class="md:hidden fixed text-center backdrop-blur-xl border-t border-divider bg-nav-bg left-0 right-0 top-26 bottom-0 z-10 px-5 py-10"
289>
290  <ul class="flex flex-col gap-5">
291  <li>
292<a href="/packages" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
293        <span>Packages</span>
294</a>
295
296  </li>
297  <li>
298<a href="/wall-of-love" class="current md:text-sm hover:text-foreground transition-colors text-foreground">
299        <span>Wall of love</span>
300</a>
301
302  </li>
303  <li>
304<a href="https://docs.adonisjs.com" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted" rel="noopener noreferrer" target="_blank">
305        <span>Docs</span>
306</a>
307
308  </li>
309  <li>
310<a href="/blog" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
311        <span>Blog</span>
312</a>
313
314  </li>
315  <li>
316<a href="/roadmap" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
317        <span>Roadmap</span>
318</a>
319
320  </li>
321  <li>
322<a href="/sponsor" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
323        <span>Sponsor</span>
324</a>
325
326  </li>
327  <li>
328<a href="/about" class="md:text-sm hover:text-foreground transition-colors text-foreground-muted">
329        <span>About</span>
330</a>
331
332  </li>
333
334    <li>
335<a href="https://github.com/adonisjs/core" class="inline-block" rel="noopener noreferrer" target="_blank">
336  <svg width="24px" height="24px" viewBox="0 0 20 20" class="text-foreground-muted hover:text-foreground transition-colors"><path fill="currentColor" d="M20 10.25q0 3.351-1.908 6.027t-4.928 3.703q-.352.068-.514-.093a.54.54 0 0 1-.163-.4V16.67q0-1.295-.677-1.895a9 9 0 0 0 1.335-.24q.591-.16 1.223-.52a3.7 3.7 0 0 0 1.055-.888q.423-.528.69-1.402t.267-2.008q0-1.616-1.028-2.75q.48-1.214-.105-2.723q-.364-.12-1.054.147a7 7 0 0 0-1.198.587l-.495.32a9 9 0 0 0-2.5-.346a9 9 0 0 0-2.5.347a12 12 0 0 0-.553-.36q-.345-.214-1.088-.514q-.741-.3-1.12-.18q-.572 1.507-.09 2.722q-1.03 1.134-1.03 2.75q0 1.134.268 2.002q.267.867.683 1.401a3.5 3.5 0 0 0 1.048.894q.632.36 1.224.52q.593.162 1.335.241q-.52.48-.638 1.375a2.5 2.5 0 0 1-.586.2a3.6 3.6 0 0 1-.742.067q-.43 0-.853-.287q-.423-.288-.723-.834a2.1 2.1 0 0 0-.631-.694q-.384-.267-.645-.32l-.26-.04q-.273 0-.378.06t-.065.153a.7.7 0 0 0 .117.187a1 1 0 0 0 .17.16l.09.066q.287.135.567.508q.28.374.41.68l.13.307q.17.507.574.821q.404.315.872.4q.468.087.905.094q.436.006.723-.047l.299-.053q0 .507.007 1.188l.006.72q0 .24-.17.4q-.168.162-.52.094q-3.021-1.028-4.928-3.703Q0 13.6 0 10.25q0-2.79 1.341-5.145a10.1 10.1 0 0 1 3.64-3.73A9.6 9.6 0 0 1 10 0a9.6 9.6 0 0 1 5.02 1.375a10.1 10.1 0 0 1 3.639 3.73Q20 7.461 20 10.25"/></svg>
337        <span class="sr-only">GitHub repository</span>
338</a>
339
340    </li>
341  </ul>
342</div>
343
344
345
346    <main><div class="hero text-center">
347  <div class="container mx-auto px-5 lg:px-10 py-24 lg:border-x border-divider relative">
348    <h1
349      class="font-display text-34 lg:text-42 text-foreground leading-10 lg:leading-52 tracking-tight"
350    >
351      Wall of love
352    </h1>
353    <p
354      class="text-16 lg:text-18 text-foreground-muted max-w-lg sm:px-2.5 mx-auto mt-5 lg:mt-3 leading-7"
355    >
356      Real stories and genuine gratitude from the people who inspire us every day.
357    </p>
358
359    <div
360      class="absolute inset-0 pointer-events-none -z-1 bg-hero-pattern bg-position-[60%] md:bg-top bg-cover"
361    ></div>
362  </div>
363</div>
364
365<div class="border-t border-divider relative">
366  <div class="container mx-auto lg:border-x border-divider px-5 lg:px-10 py-5 lg:py-10">
367    <div class="md:gap-8 space-y-5 md:space-y-8 sm:columns-2 lg:columns-3">
368
369
370
371<a href="https://twitter.com/andruu/status/1708376936710291599" class="block" rel="noopener noreferrer" target="_blank">
372  
373  <div
374    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
375  >
376    <div class="flex gap-2 items-center">
377      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
378        <img
379          src="/assets/andruu-OyPiTE4I.jpg"
380          alt="@andruu"
381          loading="lazy"
382          width="24"
383          height="24"
384        />
385      </div>
386      <span class="text-12 font-medium text-foreground">@andruu</span>
387    </div>
388    <div>
389      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
390          <p>So funny seeing everyone looking/begging for the node/ts equivalent of rails/Laravel when it&#x27;s existed for years. I started using @adonisframework in 2016 in production for one of the biggest startups in Asia. If you want full stack with everything built in take a look.</p>
391      </div>
392    </div>
393    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
394    </div>
395  </div>
396
397</a>
398
399
400
401
402
403<a href="https://x.com/Hexacker/status/1865071153460506924" class="block" rel="noopener noreferrer" target="_blank">
404  
405  <div
406    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
407  >
408    <div class="flex gap-2 items-center">
409      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
410        <img
411          src="/assets/hexacker-qoxwoe48.jpg"
412          alt="@Hexacker"
413          loading="lazy"
414          width="24"
415          height="24"
416        />
417      </div>
418      <span class="text-12 font-medium text-foreground">@Hexacker</span>
419    </div>
420    <div>
421      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
422          <p>It took me exactly 2 months to learn AdonisJS and rebuild 75% of @workleen after it was built using NestJS/React. Why the migration? The backend took about 4 months to be done, and the front was about to take more than that.</p>
423      </div>
424    </div>
425    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
426    </div>
427  </div>
428
429</a>
430
431
432
433
434
435<a href="https://x.com/Drag0sNedelcu/status/1751173678295928837" class="block" rel="noopener noreferrer" target="_blank">
436  
437  <div
438    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
439  >
440    <div class="flex gap-2 items-center">
441      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
442        <img
443          src="/assets/Drag0sNedelcu-CgfqZ95r.jpg"
444          alt="@Drag0sNedelcu"
445          loading="lazy"
446          width="24"
447          height="24"
448        />
449      </div>
450      <span class="text-12 font-medium text-foreground">@Drag0sNedelcu</span>
451    </div>
452    <div>
453      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
454          <p>Tried recently @adonisframework v6 and I am blown away. I love how the modules are separated, like orm, validation etc. Wish there were more discussions on this. Feels highly underrated...</p>
455      </div>
456    </div>
457    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
458    </div>
459  </div>
460
461</a>
462
463
464
465
466
467<a href="https://x.com/redicreate/status/1985690564826972573" class="block" rel="noopener noreferrer" target="_blank">
468  
469  <div
470    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
471  >
472    <div class="flex gap-2 items-center">
473      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
474        <img
475          src="/assets/redicreate-DH1tqaxz.jpg"
476          alt="@redicreate"
477          loading="lazy"
478          width="24"
479          height="24"
480        />
481      </div>
482      <span class="text-12 font-medium text-foreground">@redicreate</span>
483    </div>
484    <div>
485      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
486          <p>Looking for the Laravel of JavaScript? 👀</p>
487          <p>Meet #AdonisJS - elegant, full-featured, and built for productivity.</p>
488          <p>Pair it with #InertiaJS for a seamless full-stack experience.</p>
489      </div>
490    </div>
491    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
492    </div>
493  </div>
494
495</a>
496
497
498
499
500
501<a href="https://twitter.com/techreagan/status/1209464504003768320" class="block" rel="noopener noreferrer" target="_blank">
502  
503  <div
504    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
505  >
506    <div class="flex gap-2 items-center">
507      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
508        <img
509          src="/assets/techreagan-C2Ebuz1H.jpg"
510          alt="@techreagan"
511          loading="lazy"
512          width="24"
513          height="24"
514        />
515      </div>
516      <span class="text-12 font-medium text-foreground">@techreagan</span>
517    </div>
518    <div>
519      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
520          <p>@adonisframework is the first ever framework I learnt from the docs, I&#x27;m in love with this framework, it&#x27;s just like @Laravel but for the @nodejs world. I will be like I&#x27;m stuck how can i solve this, the docs got you covered. It&#x27;s gonna be my long term buddy.</p>
521      </div>
522    </div>
523    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
524    </div>
525  </div>
526
527</a>
528
529
530
531
532
533
534<a href="https://www.linkedin.com/posts/anjali-pandey-71b74024b_adonisjs-nodejs-backenddevelopment-activity-7380681987948236800-4CwX" class="block" rel="noopener noreferrer" target="_blank">
535  <div
536  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
537>
538  <div class="flex gap-2 items-center">
539    <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
540      <img
541        src="/assets/anjali-pandey-B72JHZkk.jpeg"
542        alt="Anjali Pandey"
543        loading="lazy"
544        width="24"
545        height="24"
546      />
547    </div>
548    <span class="text-12 font-medium text-foreground">Anjali Pandey</span>
549  </div>
550  <div>
551    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
552        <p>Working on a recent project introduced me to AdonisJS, and it&#x27;s been a great experience.</p>
553        <p>Coming from Node.js and Express, AdonisJS stood out with its clean MVC architecture, built-in authentication and validation, a powerful ORM, and a TypeScript-first approach.</p>
554        <p>It delivers a smooth, structured developer experience—very much like Laravel for Node.js. AdonisJS is an impressive framework that truly elevates backend development.</p>
555    </div>
556  </div>
557  <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-blue-600"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M3 9.4c0-2.24 0-3.36.436-4.216a4 4 0 0 1 1.748-1.748C6.04 3 7.16 3 9.4 3h5.2c2.24 0 3.36 0 4.216.436a4 4 0 0 1 1.748 1.748C21 6.04 21 7.16 21 9.4v5.2c0 2.24 0 3.36-.436 4.216a4 4 0 0 1-1.748 1.748C17.96 21 16.84 21 14.6 21H9.4c-2.24 0-3.36 0-4.216-.436a4 4 0 0 1-1.748-1.748C3 17.96 3 16.84 3 14.6zm5-1.775v.5"/><path d="M8 16.375V10.75m4 5.625V13.5m0 0v-2.75m0 2.75c0-1.288 1.222-2 2.4-2c1.6 0 1.6 1.375 1.6 2.875v2"/></g></svg>
558  </div>
559</div>
560
561</a>
562
563
564
565<a href="https://www.reddit.com/r/node/comments/1e760go/comment/nd2tm3x/?utm_source=share&utm_medium=web3x&utm_name=web3xcss" class="block" rel="noopener noreferrer" target="_blank">
566  <div
567  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
568>
569  <div class="flex justify-between items-center">
570    <span class="text-12 font-semibold text-foreground-muted">r/node</span>
571    <div><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
572  <path
573    d="M21.9996 11.8147C21.9996 10.5939 21.0061 9.6002 19.7853 9.6002C19.2063 9.6002 18.6693 9.83384 18.2595 10.2296C16.7503 9.23057 14.706 8.59367 12.443 8.51274L13.6791 4.60407L17.0255 5.39225C17.0247 5.40876 17.0206 5.42405 17.0206 5.44056C17.0206 6.43914 17.8326 7.25157 18.8322 7.25157C19.8304 7.25157 20.642 6.43934 20.642 5.44056C20.642 4.4424 19.8304 3.63037 18.8322 3.63037C18.0654 3.63037 17.4122 4.11029 17.1482 4.78389L13.5411 3.93516C13.3841 3.89683 13.223 3.98797 13.1743 4.14332L11.7955 8.50152C9.42915 8.53027 7.28542 9.17043 5.70948 10.1978C5.30194 9.82201 4.77085 9.59999 4.21305 9.59999C2.99266 9.59999 2 10.5937 2 11.8145C2 12.6049 2.42467 13.327 3.09643 13.7211C3.05423 13.9549 3.02589 14.1918 3.02589 14.4326C3.02589 17.7064 7.03262 20.369 11.958 20.369C16.8836 20.369 20.8905 17.706 20.8905 14.4326C20.8905 14.2057 20.8669 13.9827 20.8292 13.7621C21.5464 13.3802 21.9996 12.6432 21.9996 11.8147ZM18.832 4.24994C19.4883 4.24994 20.0218 4.78389 20.0218 5.44056C20.0218 6.09745 19.4883 6.6318 18.832 6.6318C18.1749 6.6318 17.64 6.09745 17.64 5.44056C17.64 4.78389 18.1749 4.24994 18.832 4.24994ZM2.61998 11.8147C2.61998 10.9356 3.33456 10.2202 4.21305 10.2202C4.57166 10.2202 4.9156 10.3466 5.1949 10.5657C4.26891 11.2801 3.59653 12.1415 3.26483 13.0899C2.86646 12.7941 2.61998 12.3248 2.61998 11.8147ZM11.958 19.7496C7.37472 19.7496 3.64587 17.3649 3.64587 14.433C3.64587 11.5017 7.37472 9.116 11.958 9.116C16.5415 9.116 20.2709 11.5015 20.2709 14.433C20.2709 17.3645 16.5415 19.7496 11.958 19.7496ZM20.6695 13.1366C20.3482 12.1831 19.6836 11.3162 18.7631 10.5963C19.0477 10.357 19.4047 10.22 19.7847 10.22C20.6642 10.22 21.379 10.9356 21.379 11.8145C21.3794 12.358 21.10
57376 12.8455 20.6695 13.1366Z"
574    fill="#FF4500"
575    stroke="#FF4500"
576    stroke-width="0.266661"
577  />
578  <path
579    d="M10.2822 13.3348C10.2822 12.6082 9.69134 12.0166 8.96473 12.0166C8.23813 12.0166 7.64648 12.6076 7.64648 13.3348C7.64648 14.061 8.23792 14.6523 8.96473 14.6523C9.69134 14.6523 10.2822 14.0612 10.2822 13.3348Z"
580    fill="#FF4500"
581    stroke="#FF4500"
582    stroke-width="0.266661"
583  />
584  <path
585    d="M15.0401 12.0166C14.3139 12.0166 13.7227 12.6076 13.7227 13.3348C13.7227 14.061 14.3133 14.6523 15.0401 14.6523C15.7663 14.6523 16.3573 14.0617 16.3573 13.3348C16.3573 12.6078 15.7663 12.0166 15.0401 12.0166Z"
586    fill="#FF4500"
587    stroke="#FF4500"
588    stroke-width="0.266661"
589  />
590  <path
591    d="M14.7584 16.8032C14.2165 17.3451 13.3176 17.6087 12.0102 17.6087C12.0065 17.6087 12.0034 17.6108 11.9992 17.6108C11.9953 17.6108 11.992 17.6087 11.9882 17.6087C10.6807 17.6087 9.78183 17.3451 9.24014 16.8032C9.11904 16.6821 8.92271 16.6821 8.80181 16.8032C8.68071 16.9247 8.68071 17.1207 8.80141 17.2414C9.46563 17.9058 10.5078 18.2283 11.9882 18.2283C11.992 18.2283 11.9953 18.2261 11.9992 18.2261C12.0034 18.2261 12.0065 18.2283 12.0102 18.2283C13.4901 18.2283 14.5327 17.9058 15.1967 17.2414C15.3178 17.1203 15.3178 16.9243 15.1967 16.8032C15.0758 16.6821 14.8795 16.6821 14.7584 16.8032Z"
592    fill="#FF4500"
593    stroke="#FF4500"
594    stroke-width="0.266661"
595  />
596</svg>
597
598    </div>
599  </div>
600
601  <div>
602    <label class="text-16 text-foreground mb-2.5 leading-25 block font-medium">Adonis is incredible</label>
603    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
604        <p>Adonis is incredible. Absolutely love it. I&#x27;ve used every web framework and have been an engineer for 15 years. It&#x27;s my fav node web framework by far. Excellent work!</p>
605    </div>
606  </div>
607</div>
608
609</a>
610
611
612
613
614
615
616<a href="https://x.com/mdthansil/status/1913682701535818130" class="block" rel="noopener noreferrer" target="_blank">
617  
618  <div
619    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
620  >
621    <div class="flex gap-2 items-center">
622      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
623        <img
624          src="/assets/mdthansil-DUSY-KKm.jpg"
625          alt="@mdthansil"
626          loading="lazy"
627          width="24"
628          height="24"
629        />
630      </div>
631      <span class="text-12 font-medium text-foreground">@mdthansil</span>
632    </div>
633    <div>
634      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
635          <p>Every day I use AdonisJS, and it uncovers new gems for me; I love it more and more! The combination of AdonisJS, InertiaJS, and React is simply amazing. I&#x27;m truly enjoying the experience. Thank you, @adonisframework, and the team.</p>
636      </div>
637    </div>
638    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
639    </div>
640  </div>
641
642</a>
643
644
645
646
647
648
649<a href="https://www.linkedin.com/posts/peterimoh_adonisjs-javascript-nodejs-activity-7401255852508098560-m3Hd" class="block" rel="noopener noreferrer" target="_blank">
650  <div
651  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
652>
653  <div class="flex gap-2 items-center">
654    <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
655      <img
656        src="/assets/Imoh-peter-wB7zNgC_.jpeg"
657        alt="Imoh Peter"
658        loading="lazy"
659        width="24"
660        height="24"
661      />
662    </div>
663    <span class="text-12 font-medium text-foreground">Imoh Peter</span>
664  </div>
665  <div>
666    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
667        <p>AdonisJS is the only fullstack JavaScript framework that actually makes sense if you value structure, speed, convention, and developer experience.</p>
668    </div>
669  </div>
670  <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-blue-600"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M3 9.4c0-2.24 0-3.36.436-4.216a4 4 0 0 1 1.748-1.748C6.04 3 7.16 3 9.4 3h5.2c2.24 0 3.36 0 4.216.436a4 4 0 0 1 1.748 1.748C21 6.04 21 7.16 21 9.4v5.2c0 2.24 0 3.36-.436 4.216a4 4 0 0 1-1.748 1.748C17.96 21 16.84 21 14.6 21H9.4c-2.24 0-3.36 0-4.216-.436a4 4 0 0 1-1.748-1.748C3 17.96 3 16.84 3 14.6zm5-1.775v.5"/><path d="M8 16.375V10.75m4 5.625V13.5m0 0v-2.75m0 2.75c0-1.288 1.222-2 2.4-2c1.6 0 1.6 1.375 1.6 2.875v2"/></g></svg>
671  </div>
672</div>
673
674</a>
675
676
677
678
679<a href="https://x.com/AdrienADV/status/1957340516003000663" class="block" rel="noopener noreferrer" target="_blank">
680  
681  <div
682    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
683  >
684    <div class="flex gap-2 items-center">
685      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
686        <img
687          src="/assets/AdrienADV-CywwPmU2.jpg"
688          alt="@AdrienADV"
689          loading="lazy"
690          width="24"
691          height="24"
692        />
693      </div>
694      <span class="text-12 font-medium text-foreground">@AdrienADV</span>
695    </div>
696    <div>
697      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
698          <p>Once you&#x27;ve tried @adonisframework</p>
699          <p>– DB setup in minutes</p>
700          <p>– Auth ready with @adonisjs/auth</p>
701          <p>– Fullstack with @inertiajs React</p>
702          <p>– TypeScript &amp; type-safe out of the box</p>
703          <p>I honestly wonder: why do people still use Express.js today ?</p>
704      </div>
705    </div>
706    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
707    </div>
708  </div>
709
710</a>
711
712
713
714
715
716<a href="https://twitter.com/SamNewby_/status/1396120662289309708" class="block" rel="noopener noreferrer" target="_blank">
717  
718  <div
719    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
720  >
721    <div class="flex gap-2 items-center">
722      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
723        <img
724          src="/assets/samnewby-D5kgCGoq.jpg"
725          alt="@SamNewby_"
726          loading="lazy"
727          width="24"
728          height="24"
729        />
730      </div>
731      <span class="text-12 font-medium text-foreground">@SamNewby_</span>
732    </div>
733    <div>
734      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
735          <p>If you&#x27;re a PHP dev who loves Laravel and want to give another language a go and use a similar style framework then make sure to check out @adonisframework. It has its own ORM, Auth support, and even a CLI tool called Ace which is very similar to Artisan.#Laravel #NodeJS</p>
736      </div>
737    </div>
738    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
739    </div>
740  </div>
741
742</a>
743
744
745
746
747
748
749<a href="https://www.linkedin.com/posts/ashanwithana_from-laravel-to-adonisjs-my-developer-take-activity-7392434915851784192-E5rl" class="block" rel="noopener noreferrer" target="_blank">
750  <div
751  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
752>
753  <div class="flex gap-2 items-center">
754    <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
755      <img
756        src="/assets/ashanwithana-nrTzmffc.jpeg"
757        alt="Ashan Withana"
758        loading="lazy"
759        width="24"
760        height="24"
761      />
762    </div>
763    <span class="text-12 font-medium text-foreground">Ashan Withana</span>
764  </div>
765  <div>
766    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
767        <p>After spending years working with Laravel, I recently decided to explore AdonisJS, and honestly, it feels like discovering Laravel&#x27;s long-lost cousin in the JavaScript world.</p>
768    </div>
769  </div>
770  <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-blue-600"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M3 9.4c0-2.24 0-3.36.436-4.216a4 4 0 0 1 1.748-1.748C6.04 3 7.16 3 9.4 3h5.2c2.24 0 3.36 0 4.216.436a4 4 0 0 1 1.748 1.748C21 6.04 21 7.16 21 9.4v5.2c0 2.24 0 3.36-.436 4.216a4 4 0 0 1-1.748 1.748C17.96 21 16.84 21 14.6 21H9.4c-2.24 0-3.36 0-4.216-.436a4 4 0 0 1-1.748-1.748C3 17.96 3 16.84 3 14.6zm5-1.775v.5"/><path d="M8 16.375V10.75m4 5.625V13.5m0 0v-2.75m0 2.75c0-1.288 1.222-2 2.4-2c1.6 0 1.6 1.375 1.6 2.875v2"/></g></svg>
771  </div>
772</div>
773
774</a>
775
776
777
778
779<a href="https://x.com/devhammed/status/1983487581070438671" class="block" rel="noopener noreferrer" target="_blank">
780  
781  <div
782    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
783  >
784    <div class="flex gap-2 items-center">
785      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
786        <img
787          src="/assets/devhammed-RT4QnowG.jpg"
788          alt="@devhammed"
789          loading="lazy"
790          width="24"
791          height="24"
792        />
793      </div>
794      <span class="text-12 font-medium text-foreground">@devhammed</span>
795    </div>
796    <div>
797      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
798          <p>Let me say this again!</p>
799          <p>AdonisJS is the only full-stack framework in JavaScript land.</p>
800          <p>🙌🙌🙌🙌</p>
801      </div>
802    </div>
803    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
804    </div>
805  </div>
806
807</a>
808
809
810
811
812
813<a href="https://twitter.com/carlmathisen/status/1695704205674119664" class="block" rel="noopener noreferrer" target="_blank">
814  
815  <div
816    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
817  >
818    <div class="flex gap-2 items-center">
819      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
820        <img
821          src="/assets/carlmathisen-NjFk7zDX.jpg"
822          alt="@carlmathisen"
823          loading="lazy"
824          width="24"
825          height="24"
826        />
827      </div>
828      <span class="text-12 font-medium text-foreground">@carlmathisen</span>
829    </div>
830    <div>
831      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
832          <p>We&#x27;ve used it at work for a couple of years, just replacing these express cocktails. They were fine, but I was tired of maintaining and upgrading a unique set of libraries that were our company unique combination of regular features.</p>
833      </div>
834    </div>
835    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
836    </div>
837  </div>
838
839</a>
840
841
842
843
844
845<a href="https://twitter.com/mucotreso/status/1504606612656381957" class="block" rel="noopener noreferrer" target="_blank">
846  
847  <div
848    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
849  >
850    <div class="flex gap-2 items-center">
851      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
852        <img
853          src="/assets/mucotreso-_a0W4jiz.jpg"
854          alt="@mucotreso"
855          loading="lazy"
856          width="24"
857          height="24"
858        />
859      </div>
860      <span class="text-12 font-medium text-foreground">@mucotreso</span>
861    </div>
862    <div>
863      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
864          <p>The more I work with @adonisframework the more I&#x27;m convinced that it is the best framework in the Nodejs Ecosystem.</p>
865          <p>The docs are well written, well designed, you just want to stay there and learn more.</p>
866          <p>Thanks to all the people who are working on this project.</p>
867      </div>
868    </div>
869    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
870    </div>
871  </div>
872
873</a>
874
875
876
877
878<a href="https://www.reddit.com/r/node/comments/1e760go/comment/le047od/?utm_source=share&utm_medium=web3x&utm_name=web3xcss" class="block" rel="noopener noreferrer" target="_blank">
879  <div
880  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
881>
882  <div class="flex justify-between items-center">
883    <span class="text-12 font-semibold text-foreground-muted">r/node</span>
884    <div><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
885  <path
886    d="M21.9996 11.8147C21.9996 10.5939 21.0061 9.6002 19.7853 9.6002C19.2063 9.6002 18.6693 9.83384 18.2595 10.2296C16.7503 9.23057 14.706 8.59367 12.443 8.51274L13.6791 4.60407L17.0255 5.39225C17.0247 5.40876 17.0206 5.42405 17.0206 5.44056C17.0206 6.43914 17.8326 7.25157 18.8322 7.25157C19.8304 7.25157 20.642 6.43934 20.642 5.44056C20.642 4.4424 19.8304 3.63037 18.8322 3.63037C18.0654 3.63037 17.4122 4.11029 17.1482 4.78389L13.5411 3.93516C13.3841 3.89683 13.223 3.98797 13.1743 4.14332L11.7955 8.50152C9.42915 8.53027 7.28542 9.17043 5.70948 10.1978C5.30194 9.82201 4.77085 9.59999 4.21305 9.59999C2.99266 9.59999 2 10.5937 2 11.8145C2 12.6049 2.42467 13.327 3.09643 13.7211C3.05423 13.9549 3.02589 14.1918 3.02589 14.4326C3.02589 17.7064 7.03262 20.369 11.958 20.369C16.8836 20.369 20.8905 17.706 20.8905 14.4326C20.8905 14.2057 20.8669 13.9827 20.8292 13.7621C21.5464 13.3802 21.9996 12.6432 21.9996 11.8147ZM18.832 4.24994C19.4883 4.24994 20.0218 4.78389 20.0218 5.44056C20.0218 6.09745 19.4883 6.6318 18.832 6.6318C18.1749 6.6318 17.64 6.09745 17.64 5.44056C17.64 4.78389 18.1749 4.24994 18.832 4.24994ZM2.61998 11.8147C2.61998 10.9356 3.33456 10.2202 4.21305 10.2202C4.57166 10.2202 4.9156 10.3466 5.1949 10.5657C4.26891 11.2801 3.59653 12.1415 3.26483 13.0899C2.86646 12.7941 2.61998 12.3248 2.61998 11.8147ZM11.958 19.7496C7.37472 19.7496 3.64587 17.3649 3.64587 14.433C3.64587 11.5017 7.37472 9.116 11.958 9.116C16.5415 9.116 20.2709 11.5015 20.2709 14.433C20.2709 17.3645 16.5415 19.7496 11.958 19.7496ZM20.6695 13.1366C20.3482 12.1831 19.6836 11.3162 18.7631 10.5963C19.0477 10.357 19.4047 10.22 19.7847 10.22C20.6642 10.22 21.379 10.9356 21.379 11.8145C21.3794 12.358 21.10
88676 12.8455 20.6695 13.1366Z"
887    fill="#FF4500"
888    stroke="#FF4500"
889    stroke-width="0.266661"
890  />
891  <path
892    d="M10.2822 13.3348C10.2822 12.6082 9.69134 12.0166 8.96473 12.0166C8.23813 12.0166 7.64648 12.6076 7.64648 13.3348C7.64648 14.061 8.23792 14.6523 8.96473 14.6523C9.69134 14.6523 10.2822 14.0612 10.2822 13.3348Z"
893    fill="#FF4500"
894    stroke="#FF4500"
895    stroke-width="0.266661"
896  />
897  <path
898    d="M15.0401 12.0166C14.3139 12.0166 13.7227 12.6076 13.7227 13.3348C13.7227 14.061 14.3133 14.6523 15.0401 14.6523C15.7663 14.6523 16.3573 14.0617 16.3573 13.3348C16.3573 12.6078 15.7663 12.0166 15.0401 12.0166Z"
899    fill="#FF4500"
900    stroke="#FF4500"
901    stroke-width="0.266661"
902  />
903  <path
904    d="M14.7584 16.8032C14.2165 17.3451 13.3176 17.6087 12.0102 17.6087C12.0065 17.6087 12.0034 17.6108 11.9992 17.6108C11.9953 17.6108 11.992 17.6087 11.9882 17.6087C10.6807 17.6087 9.78183 17.3451 9.24014 16.8032C9.11904 16.6821 8.92271 16.6821 8.80181 16.8032C8.68071 16.9247 8.68071 17.1207 8.80141 17.2414C9.46563 17.9058 10.5078 18.2283 11.9882 18.2283C11.992 18.2283 11.9953 18.2261 11.9992 18.2261C12.0034 18.2261 12.0065 18.2283 12.0102 18.2283C13.4901 18.2283 14.5327 17.9058 15.1967 17.2414C15.3178 17.1203 15.3178 16.9243 15.1967 16.8032C15.0758 16.6821 14.8795 16.6821 14.7584 16.8032Z"
905    fill="#FF4500"
906    stroke="#FF4500"
907    stroke-width="0.266661"
908  />
909</svg>
910
911    </div>
912  </div>
913
914  <div>
915    <label class="text-16 text-foreground mb-2.5 leading-25 block font-medium">I&#x27;ve really enjoyed the experience</label>
916    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
917        <p>I&#x27;ve been using Adonis for almost five years. I currently have applications running versions 4, 5, and 6, and for the most part I&#x27;ve really enjoyed the experience - it&#x27;s my go-to for new projects. I&#x27;ve been playing with the recent support for SSR via Inertia and it has been pretty decent so far.</p>
918    </div>
919  </div>
920</div>
921
922</a>
923
924
925
926
927
928
929<a href="https://twitter.com/pvukovic/status/1691701408104394922" class="block" rel="noopener noreferrer" target="_blank">
930  
931  <div
932    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
933  >
934    <div class="flex gap-2 items-center">
935      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
936        <img
937          src="/assets/pvukovic-DQnoQqFW.jpg"
938          alt="@pvukovic"
939          loading="lazy"
940          width="24"
941          height="24"
942        />
943      </div>
944      <span class="text-12 font-medium text-foreground">@pvukovic</span>
945    </div>
946    <div>
947      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
948          <p>Adonis is wonderful - just a perfect level of cognitive load a framework can have both in documentation and implementation.</p>
949          <p>Not too much, not too little, but exactly what you need as a developer.</p>
950      </div>
951    </div>
952    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
953    </div>
954  </div>
955
956</a>
957
958
959
960
961
962<a href="https://twitter.com/MahmMousa/status/1691694561981321277" class="block" rel="noopener noreferrer" target="_blank">
963  
964  <div
965    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
966  >
967    <div class="flex gap-2 items-center">
968      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
969        <img
970          src="/assets/MightyMoud-UMBBNWNq.jpg"
971          alt="@MightyMoud"
972          loading="lazy"
973          width="24"
974          height="24"
975        />
976      </div>
977      <span class="text-12 font-medium text-foreground">@MightyMoud</span>
978    </div>
979    <div>
980      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
981          <p>Adonis in MVC is a blessing tbh! I use it with HTMX or Turbo and it&#x27;s just perfect!</p>
982      </div>
983    </div>
984    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
985    </div>
986  </div>
987
988</a>
989
990
991
992
993
994
995<a href="https://www.linkedin.com/posts/harsh-savaliya_webdevelopment-saas-startuplife-activity-7403370439181414400-j9OT" class="block" rel="noopener noreferrer" target="_blank">
996  <div
997  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
998>
999  <div class="flex gap-2 items-center">
1000    <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
1001      <img
1002        src="/assets/harsh-savaliya-DewVuuQH.jpeg"
1003        alt="Harsh Savaliya"
1004        loading="lazy"
1005        width="24"
1006        height="24"
1007      />
1008    </div>
1009    <span class="text-12 font-medium text-foreground">Harsh Savaliya</span>
1010  </div>
1011  <div>
1012    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
1013        <p>If you are building an MVP in 2025, stop over-engineering the simple stuff. Nuxt + Adonis + Socket.io is the cheat code I wish I found 2 years ago.</p>
1014    </div>
1015  </div>
1016  <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-blue-600"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M3 9.4c0-2.24 0-3.36.436-4.216a4 4 0 0 1 1.748-1.748C6.04 3 7.16 3 9.4 3h5.2c2.24 0 3.36 0 4.216.436a4 4 0 0 1 1.748 1.748C21 6.04 21 7.16 21 9.4v5.2c0 2.24 0 3.36-.436 4.216a4 4 0 0 1-1.748 1.748C17.96 21 16.84 21 14.6 21H9.4c-2.24 0-3.36 0-4.216-.436a4 4 0 0 1-1.748-1.748C3 17.96 3 16.84 3 14.6zm5-1.775v.5"/><path d="M8 16.375V10.75m4 5.625V13.5m0 0v-2.75m0 2.75c0-1.288 1.222-2 2.4-2c1.6 0 1.6 1.375 1.6 2.875v2"/></g></svg>
1017  </div>
1018</div>
1019
1020</a>
1021
1022
1023
1024
1025<a href="https://x.com/_ndianabasi/status/1957436212421042398" class="block" rel="noopener noreferrer" target="_blank">
1026  
1027  <div
1028    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
1029  >
1030    <div class="flex gap-2 items-center">
1031      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
1032        <img
1033          src="/assets/_ndianabasi-B4Yh1rgJ.jpg"
1034          alt="@_ndianabasi"
1035          loading="lazy"
1036          width="24"
1037          height="24"
1038        />
1039      </div>
1040      <span class="text-12 font-medium text-foreground">@_ndianabasi</span>
1041    </div>
1042    <div>
1043      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
1044          <p>Once you&#x27;ve tried @adonisframework</p>
1045          <p>– DB setup in minutes</p>
1046          <p>– Auth ready with @adonisjs/auth</p>
1047          <p>– Fullstack with @inertiajs React</p>
1048          <p>– TypeScript &amp; type-safe out of the box</p>
1049          <p>I honestly wonder: why do people still use Express.js today ?</p>
1050      </div>
1051    </div>
1052    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
1053    </div>
1054  </div>
1055
1056</a>
1057
1058
1059
1060
1061<a href="https://www.reddit.com/r/webdev/comments/1haxnkj/please_give_adonisjs_a_shot/" class="block" rel="noopener noreferrer" target="_blank">
1062  <div
1063  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
1064>
1065  <div class="flex justify-between items-center">
1066    <span class="text-12 font-semibold text-foreground-muted">r/node</span>
1067    <div><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1068  <path
1069    d="M21.9996 11.8147C21.9996 10.5939 21.0061 9.6002 19.7853 9.6002C19.2063 9.6002 18.6693 9.83384 18.2595 10.2296C16.7503 9.23057 14.706 8.59367 12.443 8.51274L13.6791 4.60407L17.0255 5.39225C17.0247 5.40876 17.0206 5.42405 17.0206 5.44056C17.0206 6.43914 17.8326 7.25157 18.8322 7.25157C19.8304 7.25157 20.642 6.43934 20.642 5.44056C20.642 4.4424 19.8304 3.63037 18.8322 3.63037C18.0654 3.63037 17.4122 4.11029 17.1482 4.78389L13.5411 3.93516C13.3841 3.89683 13.223 3.98797 13.1743 4.14332L11.7955 8.50152C9.42915 8.53027 7.28542 9.17043 5.70948 10.1978C5.30194 9.82201 4.77085 9.59999 4.21305 9.59999C2.99266 9.59999 2 10.5937 2 11.8145C2 12.6049 2.42467 13.327 3.09643 13.7211C3.05423 13.9549 3.02589 14.1918 3.02589 14.4326C3.02589 17.7064 7.03262 20.369 11.958 20.369C16.8836 20.369 20.8905 17.706 20.8905 14.4326C20.8905 14.2057 20.8669 13.9827 20.8292 13.7621C21.5464 13.3802 21.9996 12.6432 21.9996 11.8147ZM18.832 4.24994C19.4883 4.24994 20.0218 4.78389 20.0218 5.44056C20.0218 6.09745 19.4883 6.6318 18.832 6.6318C18.1749 6.6318 17.64 6.09745 17.64 5.44056C17.64 4.78389 18.1749 4.24994 18.832 4.24994ZM2.61998 11.8147C2.61998 10.9356 3.33456 10.2202 4.21305 10.2202C4.57166 10.2202 4.9156 10.3466 5.1949 10.5657C4.26891 11.2801 3.59653 12.1415 3.26483 13.0899C2.86646 12.7941 2.61998 12.3248 2.61998 11.8147ZM11.958 19.7496C7.37472 19.7496 3.64587 17.3649 3.64587 14.433C3.64587 11.5017 7.37472 9.116 11.958 9.116C16.5415 9.116 20.2709 11.5015 20.2709 14.433C20.2709 17.3645 16.5415 19.7496 11.958 19.7496ZM20.6695 13.1366C20.3482 12.1831 19.6836 11.3162 18.7631 10.5963C19.0477 10.357 19.4047 10.22 19.7847 10.22C20.6642 10.22 21.379 10.9356 21.379 11.8145C21.3794 12.358 21.10
106976 12.8455 20.6695 13.1366Z"
1070    fill="#FF4500"
1071    stroke="#FF4500"
1072    stroke-width="0.266661"
1073  />
1074  <path
1075    d="M10.2822 13.3348C10.2822 12.6082 9.69134 12.0166 8.96473 12.0166C8.23813 12.0166 7.64648 12.6076 7.64648 13.3348C7.64648 14.061 8.23792 14.6523 8.96473 14.6523C9.69134 14.6523 10.2822 14.0612 10.2822 13.3348Z"
1076    fill="#FF4500"
1077    stroke="#FF4500"
1078    stroke-width="0.266661"
1079  />
1080  <path
1081    d="M15.0401 12.0166C14.3139 12.0166 13.7227 12.6076 13.7227 13.3348C13.7227 14.061 14.3133 14.6523 15.0401 14.6523C15.7663 14.6523 16.3573 14.0617 16.3573 13.3348C16.3573 12.6078 15.7663 12.0166 15.0401 12.0166Z"
1082    fill="#FF4500"
1083    stroke="#FF4500"
1084    stroke-width="0.266661"
1085  />
1086  <path
1087    d="M14.7584 16.8032C14.2165 17.3451 13.3176 17.6087 12.0102 17.6087C12.0065 17.6087 12.0034 17.6108 11.9992 17.6108C11.9953 17.6108 11.992 17.6087 11.9882 17.6087C10.6807 17.6087 9.78183 17.3451 9.24014 16.8032C9.11904 16.6821 8.92271 16.6821 8.80181 16.8032C8.68071 16.9247 8.68071 17.1207 8.80141 17.2414C9.46563 17.9058 10.5078 18.2283 11.9882 18.2283C11.992 18.2283 11.9953 18.2261 11.9992 18.2261C12.0034 18.2261 12.0065 18.2283 12.0102 18.2283C13.4901 18.2283 14.5327 17.9058 15.1967 17.2414C15.3178 17.1203 15.3178 16.9243 15.1967 16.8032C15.0758 16.6821 14.8795 16.6821 14.7584 16.8032Z"
1088    fill="#FF4500"
1089    stroke="#FF4500"
1090    stroke-width="0.266661"
1091  />
1092</svg>
1093
1094    </div>
1095  </div>
1096
1097  <div>
1098    <label class="text-16 text-foreground mb-2.5 leading-25 block font-medium">Please give AdonisJS a shot</label>
1099    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
1100        <p>As someone who was fatigued by the influx of JS frameworks, I did the smart thing and... learned another JS framework...</p>
1101        <p>But no no trust me, this one&#x27;s different. It breaks all of the JavaScript rules and allows you to write a Rails-like app using TypeScript.</p>
1102    </div>
1103  </div>
1104</div>
1105
1106</a>
1107
1108
1109
1110
1111
1112<a href="https://www.reddit.com/r/webdev/comments/1hepzmw/im_really_enjoying_adonisjs_my_new_preferred/" class="block" rel="noopener noreferrer" target="_blank">
1113  <div
1114  class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
1115>
1116  <div class="flex justify-between items-center">
1117    <span class="text-12 font-semibold text-foreground-muted">r/node</span>
1118    <div><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1119  <path
1120    d="M21.9996 11.8147C21.9996 10.5939 21.0061 9.6002 19.7853 9.6002C19.2063 9.6002 18.6693 9.83384 18.2595 10.2296C16.7503 9.23057 14.706 8.59367 12.443 8.51274L13.6791 4.60407L17.0255 5.39225C17.0247 5.40876 17.0206 5.42405 17.0206 5.44056C17.0206 6.43914 17.8326 7.25157 18.8322 7.25157C19.8304 7.25157 20.642 6.43934 20.642 5.44056C20.642 4.4424 19.8304 3.63037 18.8322 3.63037C18.0654 3.63037 17.4122 4.11029 17.1482 4.78389L13.5411 3.93516C13.3841 3.89683 13.223 3.98797 13.1743 4.14332L11.7955 8.50152C9.42915 8.53027 7.28542 9.17043 5.70948 10.1978C5.30194 9.82201 4.77085 9.59999 4.21305 9.59999C2.99266 9.59999 2 10.5937 2 11.8145C2 12.6049 2.42467 13.327 3.09643 13.7211C3.05423 13.9549 3.02589 14.1918 3.02589 14.4326C3.02589 17.7064 7.03262 20.369 11.958 20.369C16.8836 20.369 20.8905 17.706 20.8905 14.4326C20.8905 14.2057 20.8669 13.9827 20.8292 13.7621C21.5464 13.3802 21.9996 12.6432 21.9996 11.8147ZM18.832 4.24994C19.4883 4.24994 20.0218 4.78389 20.0218 5.44056C20.0218 6.09745 19.4883 6.6318 18.832 6.6318C18.1749 6.6318 17.64 6.09745 17.64 5.44056C17.64 4.78389 18.1749 4.24994 18.832 4.24994ZM2.61998 11.8147C2.61998 10.9356 3.33456 10.2202 4.21305 10.2202C4.57166 10.2202 4.9156 10.3466 5.1949 10.5657C4.26891 11.2801 3.59653 12.1415 3.26483 13.0899C2.86646 12.7941 2.61998 12.3248 2.61998 11.8147ZM11.958 19.7496C7.37472 19.7496 3.64587 17.3649 3.64587 14.433C3.64587 11.5017 7.37472 9.116 11.958 9.116C16.5415 9.116 20.2709 11.5015 20.2709 14.433C20.2709 17.3645 16.5415 19.7496 11.958 19.7496ZM20.6695 13.1366C20.3482 12.1831 19.6836 11.3162 18.7631 10.5963C19.0477 10.357 19.4047 10.22 19.7847 10.22C20.6642 10.22 21.379 10.9356 21.379 11.8145C21.3794 12.358 21.10
112076 12.8455 20.6695 13.1366Z"
1121    fill="#FF4500"
1122    stroke="#FF4500"
1123    stroke-width="0.266661"
1124  />
1125  <path
1126    d="M10.2822 13.3348C10.2822 12.6082 9.69134 12.0166 8.96473 12.0166C8.23813 12.0166 7.64648 12.6076 7.64648 13.3348C7.64648 14.061 8.23792 14.6523 8.96473 14.6523C9.69134 14.6523 10.2822 14.0612 10.2822 13.3348Z"
1127    fill="#FF4500"
1128    stroke="#FF4500"
1129    stroke-width="0.266661"
1130  />
1131  <path
1132    d="M15.0401 12.0166C14.3139 12.0166 13.7227 12.6076 13.7227 13.3348C13.7227 14.061 14.3133 14.6523 15.0401 14.6523C15.7663 14.6523 16.3573 14.0617 16.3573 13.3348C16.3573 12.6078 15.7663 12.0166 15.0401 12.0166Z"
1133    fill="#FF4500"
1134    stroke="#FF4500"
1135    stroke-width="0.266661"
1136  />
1137  <path
1138    d="M14.7584 16.8032C14.2165 17.3451 13.3176 17.6087 12.0102 17.6087C12.0065 17.6087 12.0034 17.6108 11.9992 17.6108C11.9953 17.6108 11.992 17.6087 11.9882 17.6087C10.6807 17.6087 9.78183 17.3451 9.24014 16.8032C9.11904 16.6821 8.92271 16.6821 8.80181 16.8032C8.68071 16.9247 8.68071 17.1207 8.80141 17.2414C9.46563 17.9058 10.5078 18.2283 11.9882 18.2283C11.992 18.2283 11.9953 18.2261 11.9992 18.2261C12.0034 18.2261 12.0065 18.2283 12.0102 18.2283C13.4901 18.2283 14.5327 17.9058 15.1967 17.2414C15.3178 17.1203 15.3178 16.9243 15.1967 16.8032C15.0758 16.6821 14.8795 16.6821 14.7584 16.8032Z"
1139    fill="#FF4500"
1140    stroke="#FF4500"
1141    stroke-width="0.266661"
1142  />
1143</svg>
1144
1145    </div>
1146  </div>
1147
1148  <div>
1149    <label class="text-16 text-foreground mb-2.5 leading-25 block font-medium">I&#x27;m really enjoying AdonisJS. My new preferred full-stack framework.</label>
1150    <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
1151        <p>There was a post (last week I think) about AdonisJS. The comments were along the lines of &quot;oh great another JS framework&quot;, but I thought I&#x27;d try it for a new private project.</p>
1152        <p>Really glad I did. It feels like a Typescript version of Laravel. Highly recommended to add to your toolbox (it&#x27;s frontend framework agnostic so you can use whatever frontend you like).</p>
1153    </div>
1154  </div>
1155</div>
1156
1157</a>
1158
1159
1160
1161
1162
1163
1164<a href="https://twitter.com/jooop4y/status/1686883864533499907" class="block" rel="noopener noreferrer" target="_blank">
1165  
1166  <div
1167    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
1168  >
1169    <div class="flex gap-2 items-center">
1170      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
1171        <img
1172          src="/assets/jooop4y-CKMQfh3v.jpg"
1173          alt="@jooop4y"
1174          loading="lazy"
1175          width="24"
1176          height="24"
1177        />
1178      </div>
1179      <span class="text-12 font-medium text-foreground">@jooop4y</span>
1180    </div>
1181    <div>
1182      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
1183          <p>Having a solid experience in Laravel and wanting to explore NodeJs, I found @adonisframework a good choice for me to go through. It is been easy for me to jump in since it feels like I am just writing Laravel but in typescript and NodeJS, Awesome developer experience!.</p>
1184      </div>
1185    </div>
1186    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
1187    </div>
1188  </div>
1189
1190</a>
1191
1192
1193
1194
1195
1196<a href="https://twitter.com/britzdm/status/1533547008950165507" class="block" rel="noopener noreferrer" target="_blank">
1197  
1198  <div
1199    class="flex flex-col px-6 py-5 bg-panel hover:bg-control-hover transition-colors border border-control-line hover:border-control-line-hover rounded-md break-inside-avoid-column space-y-4.5 backdrop-blur-xs"
1200  >
1201    <div class="flex gap-2 items-center">
1202      <div class="w-6 h-6 rounded-full overflow-hidden border border-divider">
1203        <img
1204          src="/assets/britzdm-B5pVFlBd.jpg"
1205          alt="@britzdm"
1206          loading="lazy"
1207          width="24"
1208          height="24"
1209        />
1210      </div>
1211      <span class="text-12 font-medium text-foreground">@britzdm</span>
1212    </div>
1213    <div>
1214      <div class="text-15 text-quote leading-26 space-y-2 tracking-wide">
1215          <p>I&#x27;ve been using @adonisframework for the last two days an I&#x27;ve already got more done then I did in the last 3 weeks with just using expressjs.</p>
1216      </div>
1217    </div>
1218    <div class="flex justify-between items-center"><svg width="1em" height="1em" viewBox="0 0 24 24" class="w-6 h-6 text-foreground"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m19 4l-5.93 6.93M5 20l5.93-6.93m2.14-2.14L7.275 4.343A1.06 1.06 0 0 0 6.481 4H5.007c-.836 0-1.307.85-.793 1.435l6.716 7.635l5.795 6.587c.19.216.483.343.794.343h1.474c.836 0 1.307-.85.793-1.435z"/></svg>
1219    </div>
1220  </div>
1221
1222</a>
1223
1224
1225    </div>
1226  </div>
1227</div>
1228</main>
1229
1230<div class="border-t border-divider">
1231  <div class="container mx-auto px-5 lg:px-10 pt-15 md:pt-30 lg:border-x border-divider">
1232    <div class="lg:px-22.5 mb-30 md:mb-52 space-y-7 sm:space-y-5">
1233        <div class="flex flex-col sm:flex-row gap-1.5 sm:gap-3">
1234          <label class="text-14 text-foreground tracking-wide">VSCode Extensions</label>
1235          <div class="flex-1 border-b border-dashed border-line sm:mb-1.5"></div>
1236          <div class="flex flex-wrap gap-5.5 text-14">
1237
1238<a href="https://marketplace.visualstudio.com/items?itemName=jripouteau.adonis-vscode-extension" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1239  AdonisJS
1240</a>
1241
1242
1243<a href="https://marketplace.visualstudio.com/items?itemName=AdonisJS.vscode-edge" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1244  Edge
1245</a>
1246
1247
1248<a href="https://marketplace.visualstudio.com/items?itemName=jripouteau.japa-vscode" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1249  Japa
1250</a>
1251
1252          </div>
1253        </div>
1254        <div class="flex flex-col sm:flex-row gap-1.5 sm:gap-3">
1255          <label class="text-14 text-foreground tracking-wide">Community</label>
1256          <div class="flex-1 border-b border-dashed border-line sm:mb-1.5"></div>
1257          <div class="flex flex-wrap gap-5.5 text-14">
1258
1259<a href="https://discord.com/invite/vDcEjq6" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1260  Discord
1261</a>
1262
1263
1264<a href="https://x.com/adonisframework" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1265  Twitter
1266</a>
1267
1268
1269<a href="https://github.com/adonisjs" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1270  GitHub
1271</a>
1272
1273
1274<a href="https://github.com/orgs/adonisjs/discussions" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5" rel="noopener noreferrer" target="_blank">
1275  Forum
1276</a>
1277
1278          </div>
1279        </div>
1280        <div class="flex flex-col sm:flex-row gap-1.5 sm:gap-3">
1281          <label class="text-14 text-foreground tracking-wide">Resources</label>
1282          <div class="flex-1 border-b border-dashed border-line sm:mb-1.5"></div>
1283          <div class="flex flex-wrap gap-5.5 text-14">
1284
1285<a href="/stories" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1286  Stories
1287</a>
1288
1289
1290<a href="/about" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1291  About
1292</a>
1293
1294
1295<a href="/roadmap" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1296  Roadmap
1297</a>
1298
1299
1300<a href="/blog" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1301  Blog
1302</a>
1303
1304
1305<a href="/packages" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1306  Packages
1307</a>
1308
1309
1310<a href="/contributors" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1311  Contributors
1312</a>
1313
1314
1315<a href="/support" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1316  Support
1317</a>
1318
1319
1320<a href="/brand" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1321  Brand
1322</a>
1323
1324
1325<a href="/sponsor" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1326  Sponsor
1327</a>
1328
1329
1330<a href="/team" class="relative hover:text-foreground transition-colors not-last:after:content-['/'] after:pointer-events-none after:text-foreground-muted after:absolute after:-right-3.5">
1331  Team
1332</a>
1333
1334          </div>
1335        </div>
1336    </div>
1337
1338    <div>
1339      <div>
1340        <svg
1341          class="w-full"
1342          xmlns="http://www.w3.org/2000/svg"
1343          width="1248"
1344          viewBox="0 0 1248 277"
1345          fill="none"
1346        >
1347          <mask
1348            id="b"
1349            style="mask-type:alpha"
1350            maskUnits="userSpaceOnUse"
1351            x="0"
1352            y="0"
1353            width="1248"
1354            height="281"
1355          >
1356            <g clip-path="url(#a)" fill="var(--color-border)">
1357              <path
1358                d="M1162.91 280.9c-28.36 0-50.9-5.698-67.62-17.094-16.71-11.395-25.83-27.096-27.35-47.102h50.9c1.27 8.61 5.58 15.195 12.92 19.753 7.6 4.305 17.98 6.457 31.15 6.457 11.9 0 20.51-1.646 25.83-4.938 5.57-3.545 8.36-8.483 8.36-14.814 0-4.812-1.65-8.483-4.94-11.016-3.04-2.785-8.74-5.064-17.09-6.837l-31.15-6.458c-23.05-4.811-40.02-12.028-50.91-21.651-10.89-9.876-16.33-22.538-16.33-37.985 0-18.74 7.22-33.301 21.65-43.684 14.44-10.635 34.57-15.953 60.4-15.953 25.58 0 45.97 5.191 61.16 15.574 15.2 10.129 23.55 24.31 25.07 42.543h-50.9c-1.01-6.584-4.56-11.522-10.64-14.814-6.08-3.545-14.69-5.318-25.83-5.318-10.13 0-17.73 1.519-22.79 4.558-4.81 2.786-7.22 6.837-7.22 12.155 0 4.559 2.03 8.231 6.08 11.016 4.05 2.532 10.76 4.812 20.13 6.837l34.95 7.218c19.5 4.051 34.19 11.649 44.07 22.791 10.13 10.889 15.19 23.804 15.19 38.745 0 18.992-7.47 33.807-22.41 44.443-14.69 10.382-35.58 15.574-62.68 15.574ZM983.38 281.091V87.366h56.98v193.725h-56.98Zm-1.9-219.555V0h60.78v61.536h-60.78ZM750.413 281.101V87.376h55.84v45.582h1.14v148.143h-56.98Zm134.853 0V161.068c0-10.636-2.785-18.613-8.357-23.931-5.318-5.318-13.169-7.977-23.552-7.977-8.863 0-16.841 2.026-23.931 6.078-6.838 4.051-12.283 9.622-16.335 16.713-3.799 7.091-5.698 15.447-5.698 25.07l-4.938-46.722c6.331-14.181 15.574-25.45 27.73-33.806 12.409-8.61 27.604-12.915 45.585-12.915 21.526 0 37.987 6.077 49.383 18.233 11.396 11.902 17.094 27.982 17.094 48.241v131.049h-56.981ZM613.1 280.9c-21.272 0-40.013-4.179-56.22-12.536-15.955-8.61-28.491-20.512-37.608-35.706-8.863-15.447-13.295-33.174-13.295-53.179 0-20.006 4.432-37.479 13.295-52.42 9.117-14.941 21.653-26.589 37.608-34.946 16.207-8.357 34.948-12.535 56.22-12.535 21.526 0 40.267 4.178 56.221 12.535 16.208 8.357 28.744 20.005 37.607 34.946 8.864 14.941 13.296 32.414 13.296 52.42 0 20.005-4.559 37.732-13.676 53.179-8.863 15.194-21.399 27.096-37.607 35.706-15.954 8.357-34.568 12.536-55.841 12.536Zm0-44.823c8.864 0 16.841-2.279 23.932-6.837 7.344-4.559 13.169-11.016 17.474-19.373 4.305-8.61 6.458-18.866 6.458-30.768 0-17.473-4.685-30.895-14.055-40.264-9.117-9.623-20.387-14.435-33.809-14.435-13.422 0-24.818 4.812-34.188 14.435-9.117 9.623-13.675 23.044-13.675 40.264 0 11.902 2.152 22.158 6.458 30.768 4.305 8.357 10.003 14.814 17.094 19.373 7.344 4.558 15.448 6.837 24.311 6.837ZM419.774 280.902v-46.721l3.799.759c-2.533 13.928-10.13 25.07-22.793 33.427-12.409 8.357-27.35 12.535-44.824 12.535-17.728 0-33.176-4.051-46.345-12.155-12.915-8.357-22.918-20.005-30.009-34.946-7.091-14.941-10.637-32.541-10.637-52.8 0-20.512 3.672-38.365 11.017-53.559 7.344-15.194 17.6-26.969 30.769-35.326 13.422-8.357 28.997-12.535 46.724-12.535 18.487 0 33.429 4.3
135805 44.825 12.915 11.649 8.61 18.487 20.385 20.513 35.326l-4.179.38V3.61h56.981v277.292h-55.841Zm-45.585-45.582c13.422 0 24.312-4.685 32.669-14.054 8.357-9.623 12.536-23.298 12.536-41.024 0-17.727-4.305-31.275-12.916-40.645-8.357-9.623-19.373-14.434-33.048-14.434-13.169 0-24.059 4.811-32.669 14.434-8.357 9.623-12.536 23.298-12.536 41.024 0 17.727 4.179 31.275 12.536 40.645 8.61 9.369 19.753 14.054 33.428 14.054ZM0 281.104 98.007 7.61h50.142L58.12 281.104H0Zm200.572 0L110.922 7.61h52.422l98.007 273.494h-60.779ZM51.662 175.125H205.13v45.583H51.662v-45.583Z"
1359              ></path>
1360            </g>
1361          </mask>
1362          <g mask="url(#b)">
1363            <path fill="url(#c)" d="M0 0h1248v282H0z"></path>
1364          </g>
1365          <defs>
1366            <linearGradient
1367              id="c"
1368              x1="662.5"
1369              y1="-55.5"
1370              x2="668.5"
1371              y2="282"
1372              gradientUnits="userSpaceOnUse"
1373            >
1374              <stop stop-color="var(--color-dots)"></stop>
1375              <stop offset="1" stop-color="var(--color-card)"></stop>
1376            </linearGradient>
1377            <clipPath id="a">
1378              <path fill="#fff" d="M0 0h1248v281H0z"></path>
1379            </clipPath>
1380          </defs>
1381        </svg>
1382      </div>
1383    </div>
1384  </div>
1385</div>
1386
1387  
1387<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"b3fcabc4c85744c3924d25d13183af75","r":1,"spa":2}' crossorigin="anonymous"></script>
1387
1388</body>
1389</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.