Noureddine RAMDI / A practical Go and Next.js SaaS starter kit with modern dev workflows

Created Mon, 04 May 2026 10:23:02 +0000 Modified Sat, 23 May 2026 20:41:27 +0000

moasq/production-saas-starter

Building a SaaS product from scratch can be daunting, especially when juggling backend APIs, frontend interfaces, infrastructure, and developer workflows. The moasq/production-saas-starter repository offers a solid foundation combining Go and Next.js, wired up with Docker Compose and modern build tools, aiming to smooth out the early pain of SaaS development.

What production-saas-starter is and how it’s structured

This starter kit is a full-stack SaaS boilerplate that integrates a Go backend with a React-based frontend powered by Next.js. The backend, living under the go-b2b-starter folder, is written in Go targeting version 1.25 and above. The frontend, located in the next_b2b_starter directory, uses Next.js with Node.js 20+ and the pnpm package manager.

The architecture splits concerns cleanly: Go handles API logic, business rules, and data persistence, while Next.js manages server-side rendering and client-side interactivity. Docker and Docker Compose orchestrate the development environment, spinning up all necessary services and dependencies with minimal fuss.

This separation aligns well with modern SaaS patterns where backend and frontend teams can work in parallel, and deployment pipelines can treat them as distinct units. The repo also emphasizes a developer-friendly setup, documented clearly with scripts and makefiles to streamline daily workflows.

How the repo’s technical design supports production readiness

The codebase stands out for balancing simplicity with practical production considerations. Using Go for the backend ensures fast, compiled code with minimal runtime overhead, while Next.js offers a robust React framework that supports static and dynamic rendering.

The Docker Compose setup encapsulates dependencies, reducing the “works on my machine” problem. The setup.sh script automates environment key configuration and service startup, which is a boon for onboarding new developers or spinning up fresh environments quickly.

Tradeoffs include the complexity of maintaining two separate codebases and ensuring API contracts are well-defined. However, this separation also means that teams can optimize and scale backend and frontend independently. The use of pnpm over npm or yarn is a subtle DX win, improving install speeds and disk usage.

The backend uses Makefile targets like make dev to start development servers with live reload, reflecting attention to developer experience. The frontend similarly uses pnpm dev for local hot reload.

The documentation is split between SETUP.md for quickstart and DEVELOPMENT.md for deeper operational guidance, which helps keep the README focused but still provides comprehensive info elsewhere.

Quick start with production-saas-starter

Please follow these simple steps to get a local copy up and running.

Prerequisites

  • Docker & Docker Compose
  • Go 1.25+
  • Node.js 20+ & pnpm

The One-Line Setup

Run this command to configure your keys and start the infrastructure:

chmod +x setup.sh && ./setup.sh

Manual Start:

  1. Backend: cd go-b2b-starter && make dev
  2. Frontend: cd next_b2b_starter && pnpm dev
  3. Visit: http://localhost:3000

[!IMPORTANT] See SETUP.md for quick setup or DEVELOPMENT.md for comprehensive guidance including multi-platform prerequisites, troubleshooting, and daily workflow tips.

Verdict: who should consider this starter kit

This repo is a pragmatic starting point for teams comfortable with Go and React who want a production-minded SaaS foundation. Its clear separation of backend and frontend, combined with Docker Compose orchestration and solid developer experience tooling, makes it suitable for projects that need to scale code and teams independently.

The tradeoffs are the overhead of maintaining two codebases and mastering the setup scripts and environment keys. It’s not a zero-config playground but a deliberate, opinionated scaffold designed to reduce the boilerplate and friction SaaS developers often face.

If you’re building a SaaS and want a tested layout with Go and Next.js that you can extend and customize, this starter kit is worth exploring. It won’t solve every problem — especially domain-specific business logic or advanced multi-tenancy — but it covers the infrastructure and workflow essentials well.

In short, it’s a solid foundation that respects real-world constraints and developer ergonomics without overpromising.


→ GitHub Repo: moasq/production-saas-starter ⭐ 512 · Go