<?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: Salman Faris</title>
    <description>The latest articles on DEV Community by Salman Faris (@salmanfaris).</description>
    <link>https://dev.to/salmanfaris</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%2F2061429%2F76426d86-fbe3-41ea-81a0-3d5026522785.gif</url>
      <title>DEV Community: Salman Faris</title>
      <link>https://dev.to/salmanfaris</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/salmanfaris"/>
    <language>en</language>
    <item>
      <title>I Built a Next.js-Inspired Web Framework in Go — Meet NexGo</title>
      <dc:creator>Salman Faris</dc:creator>
      <pubDate>Wed, 01 Apr 2026 09:04:32 +0000</pubDate>
      <link>https://dev.to/salmanfaris/i-built-a-nextjs-inspired-web-framework-in-go-meet-nexgo-55ib</link>
      <guid>https://dev.to/salmanfaris/i-built-a-nextjs-inspired-web-framework-in-go-meet-nexgo-55ib</guid>
      <description>&lt;p&gt;Modern web development is dominated by tools like Next.js, but most of them rely heavily on Node.js, npm, and complex build systems.&lt;/p&gt;

&lt;p&gt;I wanted something simpler. Faster. More efficient.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;NexGo&lt;/strong&gt; — a Go-powered web framework inspired by Next.js.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚡ What is NexGo?
&lt;/h2&gt;

&lt;p&gt;NexGo brings the &lt;strong&gt;developer experience of Next.js&lt;/strong&gt; into the &lt;strong&gt;Go ecosystem&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It allows you to build full-stack web applications using:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;File-based routing&lt;/li&gt;
&lt;li&gt;Server-side rendering (SSR)&lt;/li&gt;
&lt;li&gt;API routes&lt;/li&gt;
&lt;li&gt;Hot reload&lt;/li&gt;
&lt;li&gt;Static site generation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All compiled into a &lt;strong&gt;single binary&lt;/strong&gt; — no runtime dependencies, no Node.js.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔥 Why NexGo?
&lt;/h2&gt;

&lt;p&gt;Most modern frameworks come with overhead:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;❌ Node.js runtime&lt;/li&gt;
&lt;li&gt;❌ Heavy dependencies&lt;/li&gt;
&lt;li&gt;❌ Complex build pipelines&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With NexGo:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ No Node.js&lt;/li&gt;
&lt;li&gt;✅ No npm&lt;/li&gt;
&lt;li&gt;✅ Zero dependencies&lt;/li&gt;
&lt;li&gt;✅ Blazing fast performance (~50K req/sec)&lt;/li&gt;
&lt;li&gt;✅ Simple deployment (just one binary)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧠 How It Works
&lt;/h2&gt;

&lt;p&gt;NexGo uses a &lt;strong&gt;file-based routing system&lt;/strong&gt;, similar to Next.js.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pages/
├── index.html        → /
├── about.html        → /about
├── blog/
│   └── [slug].html   → /blog/post-1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Just create files — NexGo automatically turns them into routes.&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 Getting Started
&lt;/h2&gt;

&lt;p&gt;Install NexGo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;go &lt;span class="nb"&gt;install &lt;/span&gt;github.com/salmanfaris22/nexgo/cmd/nexgo@latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create a project:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;nexgo create my-app
&lt;span class="nb"&gt;cd &lt;/span&gt;my-app
nexgo dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now open:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="http://localhost:3000" rel="noopener noreferrer"&gt;http://localhost:3000&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Your app is live with hot reload ⚡&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚡ Built for Performance
&lt;/h2&gt;

&lt;p&gt;Because NexGo is written in Go:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It handles &lt;strong&gt;thousands of requests efficiently&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Compiles into a &lt;strong&gt;small binary (~10MB)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Uses &lt;strong&gt;no external runtime&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🌐 Live Demo
&lt;/h2&gt;

&lt;p&gt;Check out NexGo in action:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://nexgo.up.railway.app/" rel="noopener noreferrer"&gt;https://nexgo.up.railway.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💡 This entire website is built using NexGo itself.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧩 Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;File-based routing&lt;/li&gt;
&lt;li&gt;Layouts and reusable components&lt;/li&gt;
&lt;li&gt;API routes using Go&lt;/li&gt;
&lt;li&gt;Built-in middleware (CORS, logging, gzip)&lt;/li&gt;
&lt;li&gt;Static asset support&lt;/li&gt;
&lt;li&gt;Hot reload (HMR)&lt;/li&gt;
&lt;li&gt;DevTools panel&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ⚖️ NexGo vs Next.js
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;NexGo&lt;/th&gt;
&lt;th&gt;Next.js&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Language&lt;/td&gt;
&lt;td&gt;Go&lt;/td&gt;
&lt;td&gt;JavaScript&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Runtime&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;Node.js&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Deployment&lt;/td&gt;
&lt;td&gt;Single binary&lt;/td&gt;
&lt;td&gt;Server / Vercel&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Performance&lt;/td&gt;
&lt;td&gt;⚡ Very high&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  💡 Why I Built This
&lt;/h2&gt;

&lt;p&gt;I wanted a framework that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Combines &lt;strong&gt;simplicity + performance&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Removes unnecessary complexity&lt;/li&gt;
&lt;li&gt;Feels modern like Next.js&lt;/li&gt;
&lt;li&gt;Runs entirely on Go&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;NexGo is my attempt to bring that vision to life.&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 What’s Next?
&lt;/h2&gt;

&lt;p&gt;I’m actively improving NexGo and exploring:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better developer tools&lt;/li&gt;
&lt;li&gt;Plugin ecosystem&lt;/li&gt;
&lt;li&gt;More advanced routing features&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  💬 Feedback Welcome
&lt;/h2&gt;

&lt;p&gt;This is an open-source project, and I’d love your feedback.&lt;/p&gt;

&lt;p&gt;👉 GitHub: &lt;a href="https://github.com/salmanfaris22/nexgo" rel="noopener noreferrer"&gt;https://github.com/salmanfaris22/nexgo&lt;/a&gt;&lt;br&gt;
👉 Try it: &lt;a href="https://nexgo.up.railway.app/" rel="noopener noreferrer"&gt;https://nexgo.up.railway.app/&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  ⭐ Support the Project
&lt;/h2&gt;

&lt;p&gt;If you find NexGo interesting:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give it a ⭐ on GitHub&lt;/li&gt;
&lt;li&gt;Share it with other developers&lt;/li&gt;
&lt;li&gt;Try building something with it&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  🚀 Built with Go. Inspired by Next.js. Powered by simplicity.
&lt;/h3&gt;

</description>
      <category>nexgo</category>
      <category>nextjs</category>
      <category>react</category>
      <category>go</category>
    </item>
  </channel>
</rss>
