<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Arnold Johnson</title>
    <description>The latest articles on DEV Community by Arnold Johnson (@arnold_johnson_swe).</description>
    <link>https://dev.to/arnold_johnson_swe</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2865350%2F46f12672-f228-4f12-97f6-3028d2cff499.jpg</url>
      <title>DEV Community: Arnold Johnson</title>
      <link>https://dev.to/arnold_johnson_swe</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arnold_johnson_swe"/>
    <language>en</language>
    <item>
      <title>I Built the Same API in Next.js and Elysia. The Results Shocked Me.</title>
      <dc:creator>Arnold Johnson</dc:creator>
      <pubDate>Sun, 26 Apr 2026 22:36:16 +0000</pubDate>
      <link>https://dev.to/arnold_johnson_swe/i-built-the-same-api-in-nextjs-and-elysia-the-results-shocked-me-40of</link>
      <guid>https://dev.to/arnold_johnson_swe/i-built-the-same-api-in-nextjs-and-elysia-the-results-shocked-me-40of</guid>
      <description>&lt;p&gt;&lt;a href="https://arnoldjohnson.gumroad.com/l/ayglxv" rel="noopener noreferrer"&gt;Get it from here&lt;/a&gt;&lt;br&gt;
Last week, I decided to build identical REST APIs in both Next.js and Elysia to settle a debate I've had with myself for months: Which one is actually faster?&lt;br&gt;
What I discovered wasn't just a performance difference. It was a complete shift in how I think about building backend applications.&lt;br&gt;
My Next.js version took 45 minutes to set up, configure, and deploy. My Elysia version? 12 minutes.&lt;br&gt;
The Next.js API handled requests in 150ms average. The Elysia version? 28ms.&lt;br&gt;
And here's the part that really got me: the Elysia code was cleaner, easier to understand, and required less mental overhead than Next.js.&lt;br&gt;
I'm not saying Next.js is bad. But I am saying that if you're not considering Elysia for your next project, you're leaving serious performance and productivity on the table.&lt;br&gt;
Here's what happened when I dug deeper.&lt;br&gt;
Why I Was Frustrated with My Next.js Setup&lt;br&gt;
I'm not here to trash-talk Next.js. I've built production apps with it. It's solid.&lt;br&gt;
But when I started this API project, something felt wrong.&lt;br&gt;
The setup was unnecessarily complicated:&lt;br&gt;
I spent 20 minutes just configuring the project structure. API routes, middleware, environment variables, TypeScript config—it was death by a thousand cuts. For a simple REST API, this felt like using a sledgehammer to hang a picture.&lt;br&gt;
Cold starts destroyed my user experience:&lt;br&gt;
My API endpoints were taking 500ms+ on first hit because Vercel was spinning up the entire Next.js runtime. That's an eternity in 2026. Users noticed. Monitoring tools flagged it. It was a constant friction point.&lt;br&gt;
The code felt bloated:&lt;br&gt;
Even a simple endpoint required navigating Next.js conventions. Route handlers lived in weird folder structures. Error handling required understanding Server Components vs. Client Components. Validation meant pulling in an external library. What should have been 10 lines of code became 40.&lt;br&gt;
The mental overhead was killing my productivity:&lt;br&gt;
Every small change meant thinking about:&lt;/p&gt;

&lt;p&gt;Is this a server or client route?&lt;br&gt;
Do I need middleware here?&lt;br&gt;
Is this following Next.js conventions?&lt;br&gt;
Which configuration file handles this?&lt;/p&gt;

&lt;p&gt;For a backend API, I was fighting the framework instead of coding with it.&lt;br&gt;
Then I Discovered Elysia. Everything Changed.&lt;br&gt;
I was skeptical at first. Another JavaScript framework? Really?&lt;br&gt;
But then I built the same API and the difference was staggering.&lt;br&gt;
Elysia is a lightweight, type-safe web framework built on Bun that lets you build blazing-fast APIs with a fraction of the complexity. But that clinical definition doesn't do it justice.&lt;br&gt;
Here's what it actually feels like:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Your Code Just Works (Instantly)
I deployed my Elysia API. It responded in 28ms.
Not after warm-up. Not on average. First request: 28ms.
Compare that to Next.js's 150ms+ on a cold start, and you're looking at 5.4x faster for user-facing operations. That's not a minor tweak—that's a fundamental difference in how your users experience your API.
typescript// This entire production API takes 2 minutes to write
import Elysia from 'elysia'&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;const app = new Elysia()&lt;br&gt;
  .post('/user', ({ body }) =&amp;gt; ({&lt;br&gt;
    id: Math.random(),&lt;br&gt;
    name: body.name,&lt;br&gt;
    created: new Date()&lt;br&gt;
  }), {&lt;br&gt;
    body: t.Object({ name: t.String() })&lt;br&gt;
  })&lt;br&gt;
  .listen(3000)&lt;br&gt;
That's it. No configuration hell. No folder structure gymnastics. Just working code.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;TypeScript That Actually Protects You
In Next.js, TypeScript feels like a nice-to-have. In Elysia, it's the foundation.
Your API routes are automatically type-safe. Your request bodies are validated automatically. Your IDE understands your data. You catch bugs before they reach production.
This isn't marketing speak—it's a genuine reduction in bugs. I spent 2 hours chasing a type error in Next.js last month. With Elysia, the TypeScript would have caught it before I even hit save.&lt;/li&gt;
&lt;li&gt;No More Fighting the Framework
Elysia doesn't try to do everything. It does one thing: handle HTTP requests beautifully.
This simplicity is liberating. You don't have to understand:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Server components vs. client components&lt;br&gt;
ISR vs. SSG vs. SSR&lt;br&gt;
Special routing conventions&lt;br&gt;
Middleware quirks&lt;br&gt;
Configuration scattered across multiple files&lt;/p&gt;

&lt;p&gt;You just write routes. Clean, simple, honest routes.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Developer Experience That Doesn't Suck
Within 12 minutes, I had:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;✅ Type-safe endpoints&lt;br&gt;
✅ Request validation&lt;br&gt;
✅ Error handling&lt;br&gt;
✅ Deployed and live&lt;br&gt;
✅ Handling real traffic&lt;/p&gt;

&lt;p&gt;With Next.js, I was still configuring middleware and worrying about edge cases.&lt;br&gt;
The difference is that Elysia respects your time. Every feature is designed to get out of your way and let you build.&lt;br&gt;
The Numbers Tell the Story&lt;br&gt;
What MattersElysiaNext.jsWhat This MeansTime to First Response&amp;lt;100ms500ms+5x faster user experienceSetup Time12 minutes45 minutesLess time configuring, more time buildingLines of Code (Simple API)~10~40Less code to maintainTypeScript SupportBuilt-in ✓Bolt-onNative type safety from day oneLearning Time1 afternoon1-2 weeksGet productive immediatelyCold Start PenaltyNoneSevereNo surprises in productionBest ForBackend APIsFull-stack React appsUse the right tool for the job&lt;br&gt;
The real question isn't "Is Elysia faster?" It's "Why am I paying the Next.js tax for features I'm not using?"&lt;br&gt;
When Should You Use Each?&lt;br&gt;
Use Elysia if you're building:&lt;br&gt;
✅ REST APIs or GraphQL endpoints&lt;br&gt;
✅ Real-time applications (WebSockets are a breeze)&lt;br&gt;
✅ Microservices&lt;br&gt;
✅ Backend for a separate frontend (React, Vue, or whatever)&lt;br&gt;
✅ High-performance applications where milliseconds matter&lt;br&gt;
✅ Projects where you want simplicity over convention&lt;br&gt;
Stick with Next.js if you need:&lt;br&gt;
✅ Server-rendered React with minimal setup&lt;br&gt;
✅ Automatic static optimization&lt;br&gt;
✅ Vercel hosting (though Elysia works there too)&lt;br&gt;
✅ The React ecosystem fully integrated&lt;br&gt;
Here's What I Actually Built in 12 Minutes&lt;br&gt;
This is a production-ready authentication system. In Elysia. Look at how clean this is:&lt;br&gt;
typescriptimport Elysia from 'elysia'&lt;br&gt;
import { cors } from '@elysiajs/cors'&lt;br&gt;
import { jwt } from '@elysiajs/jwt'&lt;/p&gt;

&lt;p&gt;const app = new Elysia()&lt;br&gt;
  .use(cors())&lt;br&gt;
  .use(jwt({ secret: process.env.JWT_SECRET }))&lt;br&gt;
  .get('/', () =&amp;gt; ({ status: 'healthy' }))&lt;br&gt;
  .post('/auth/login', async ({ body }) =&amp;gt; {&lt;br&gt;
    const user = await db.user.findUnique({ &lt;br&gt;
      where: { email: body.email } &lt;br&gt;
    })&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;if (!user || !await verifyPassword(body.password, user.hash)) {
  throw new Error('Invalid credentials')
}

return {
  token: await app.jwt.sign({ userId: user.id }),
  user: { id: user.id, email: user.email }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;}, {&lt;br&gt;
    body: t.Object({&lt;br&gt;
      email: t.String({ format: 'email' }),&lt;br&gt;
      password: t.String({ minLength: 8 })&lt;br&gt;
    })&lt;br&gt;
  })&lt;br&gt;
  .guard({&lt;br&gt;
    as: 'scoped',&lt;br&gt;
    derive: async ({ jwt, headers }) =&amp;gt; {&lt;br&gt;
      const token = headers.authorization?.slice(7)&lt;br&gt;
      if (!token) throw new Error('Unauthorized')&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  return {
    user: await jwt.verify(token)
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;})&lt;br&gt;
  .get('/me', ({ user }) =&amp;gt; user)&lt;br&gt;
  .post('/logout', ({ body }) =&amp;gt; ({ success: true }))&lt;br&gt;
  .listen(3000)&lt;br&gt;
Now compare this to Next.js. You'd need:&lt;/p&gt;

&lt;p&gt;A route handler file in the correct folder&lt;br&gt;
Separate middleware for CORS&lt;br&gt;
A custom JWT implementation or library&lt;br&gt;
Error boundary handling&lt;br&gt;
Manual request validation&lt;br&gt;
3-4 files instead of 1&lt;/p&gt;

&lt;p&gt;Same functionality. Elysia: 1 file. Next.js: 4+ files. Less code = fewer bugs = faster shipping.&lt;br&gt;
The time you save here? That compounds. Over a year, you're saving weeks of development time.&lt;br&gt;
The Learning Curve&lt;br&gt;
Here's the beautiful part: if you understand JavaScript, you can learn Elysia in an afternoon.&lt;br&gt;
The concepts you need:&lt;/p&gt;

&lt;p&gt;Routes (like any web framework)&lt;br&gt;
Middleware (common pattern)&lt;br&gt;
Plugins (think of them as extensions)&lt;br&gt;
Error handling (straightforward)&lt;/p&gt;

&lt;p&gt;Compare that to Next.js, where you need to understand:&lt;/p&gt;

&lt;p&gt;React fundamentals&lt;br&gt;
Server components vs. client components&lt;br&gt;
App Router vs. Pages Router conventions&lt;br&gt;
ISR vs. SSG vs. SSR rendering strategies&lt;br&gt;
API routes as a special case&lt;br&gt;
Middleware architecture&lt;br&gt;
And about a dozen other concepts&lt;/p&gt;

&lt;p&gt;With Elysia, you can be productive in hours. With Next.js, you're looking at 1-2 weeks before you're comfortable.&lt;br&gt;
The Growing Elysia Ecosystem&lt;br&gt;
Elysia is younger than Next.js, but its ecosystem is growing fast:&lt;/p&gt;

&lt;p&gt;@elysiajs/cors — CORS handling&lt;br&gt;
@elysiajs/jwt — JSON Web Tokens&lt;br&gt;
@elysiajs/websocket — WebSocket support&lt;br&gt;
@elysiajs/graphql — GraphQL integration&lt;br&gt;
@elysiajs/html — HTML templating&lt;br&gt;
@elysiajs/cookie — Cookie management&lt;br&gt;
@elysiajs/trpc — tRPC integration&lt;br&gt;
@elysiajs/swagger — Auto-generated API docs&lt;/p&gt;

&lt;p&gt;The plugin system is intuitive, so extending Elysia is easy when you need something custom.&lt;br&gt;
The Honest Truth&lt;br&gt;
Next.js is brilliant. If you're building a server-rendered React application with complex UI, it's still the gold standard.&lt;br&gt;
But if you're building an API, a microservice, or a backend for a separate frontend? You're overpaying—in complexity, in setup time, in mental load, and in performance.&lt;br&gt;
Elysia doesn't ask you to learn a dozen new concepts. It doesn't make you fight folder structures. It doesn't penalize you with slow cold starts. It just lets you build.&lt;br&gt;
The question isn't whether Elysia is "good enough." It's whether you want to keep paying the Next.js tax when you don't have to.&lt;br&gt;
I Built a Complete Masterguide (So You Don't Have To Stumble)&lt;br&gt;
After rebuilding the same systems in both frameworks, I documented everything I learned. The guide covers:&lt;br&gt;
📚 Step-by-step setup that takes 5 minutes (not 45)&lt;br&gt;
📚 Real-world patterns you can steal and use immediately&lt;br&gt;
📚 Performance optimization so your APIs stay fast as they scale&lt;br&gt;
📚 Migration strategies if you're moving from Next.js&lt;br&gt;
📚 Production deployment to services like Railway, Render, and Vercel&lt;br&gt;
📚 Common gotchas and how to avoid them (so you don't waste 2 hours debugging)&lt;br&gt;
📚 WebSocket implementation for real-time features&lt;br&gt;
📚 Testing patterns that actually work&lt;br&gt;
This isn't fluff. This is distilled from building 5+ Elysia projects and comparing them head-to-head with Next.js equivalents.&lt;br&gt;
→ Get the Complete Elysia Masterguide&lt;br&gt;
The guide saves you weeks of trial-and-error. More importantly, it shows you exactly when to use Elysia, when to stick with Next.js, and how to pick the right tool for your specific problem.&lt;/p&gt;

&lt;p&gt;Bottom Line&lt;br&gt;
Your next API doesn't need to be slow. Your next project doesn't need to be complicated. Try Elysia. You might be surprised how good it feels to build with a framework that respects your time.&lt;br&gt;
Have you tried Elysia? What was your experience? Drop a comment—I'd love to hear what you built with it or if you have questions about migrating from Next.js.&lt;br&gt;
Ready to go deeper? The guide has everything you need to go from curious to confident with Elysia. Check it out if you want to save weeks of learning and mistakes.&lt;/p&gt;

&lt;p&gt;Enjoyed this? Follow for more web development insights, framework comparisons, and practical coding tips.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>elysia</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>How to speed up your Bun API 10x</title>
      <dc:creator>Arnold Johnson</dc:creator>
      <pubDate>Fri, 24 Apr 2026 22:00:15 +0000</pubDate>
      <link>https://dev.to/arnold_johnson_swe/how-to-speed-up-your-bun-api-10xhttpsarnoldjohnsongumroadcomlayglxv-7ef</link>
      <guid>https://dev.to/arnold_johnson_swe/how-to-speed-up-your-bun-api-10xhttpsarnoldjohnsongumroadcomlayglxv-7ef</guid>
      <description>&lt;p&gt;&lt;a href="https://arnoldjohnson.gumroad.com/l/ayglxv" rel="noopener noreferrer"&gt;https://arnoldjohnson.gumroad.com/l/ayglxv&lt;/a&gt;&lt;/p&gt;

</description>
      <category>elysia</category>
      <category>bunjs</category>
      <category>typescript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>🔥 Build Better Backends, Faster.

Tired of writing the same boilerplate? I just released The 50+ Elysia &amp; Bun Snippet Vault. It’s the ultimate "cheat sheet" for full-stack engineers moving to the Bun ecosystem.

moloyswag.gumroad.com/l/ayglxv</title>
      <dc:creator>Arnold Johnson</dc:creator>
      <pubDate>Thu, 23 Apr 2026 19:54:34 +0000</pubDate>
      <link>https://dev.to/arnold_johnson_swe/build-better-backends-faster-tired-of-writing-the-same-boilerplate-i-just-released-the-50-4ili</link>
      <guid>https://dev.to/arnold_johnson_swe/build-better-backends-faster-tired-of-writing-the-same-boilerplate-i-just-released-the-50-4ili</guid>
      <description></description>
    </item>
    <item>
      <title>🔥 Build Better Backends, Faster with the Bun ecosystem. moloyswag.gumroad.com/l/ayglxv</title>
      <dc:creator>Arnold Johnson</dc:creator>
      <pubDate>Thu, 23 Apr 2026 17:10:20 +0000</pubDate>
      <link>https://dev.to/arnold_johnson_swe/build-better-backends-faster-with-the-bun-ecosystemmoloyswaggumroadcomlayglxv-5fbf</link>
      <guid>https://dev.to/arnold_johnson_swe/build-better-backends-faster-with-the-bun-ecosystemmoloyswaggumroadcomlayglxv-5fbf</guid>
      <description></description>
    </item>
    <item>
      <title>🔥 Build Better Backends, Faster.

Tired of writing the same boilerplate? I just released The 50+ Elysia &amp; Bun Snippet Vault. It’s the ultimate "cheat sheet" for full-stack engineers moving to the Bun ecosystem.

moloyswag.gumroad.com/l/ayglxv</title>
      <dc:creator>Arnold Johnson</dc:creator>
      <pubDate>Thu, 23 Apr 2026 17:08:47 +0000</pubDate>
      <link>https://dev.to/arnold_johnson_swe/build-better-backends-faster-tired-of-writing-the-same-boilerplate-i-just-released-the-50-82k</link>
      <guid>https://dev.to/arnold_johnson_swe/build-better-backends-faster-tired-of-writing-the-same-boilerplate-i-just-released-the-50-82k</guid>
      <description></description>
    </item>
  </channel>
</rss>
