Laravel-style · Built for Go

The clean stack
for Go Artisans.

Laravel style framework for Go

Running Nimbus v0.1.4 · environment

terminal — zsh
Built-in Router ORM Auth Queues Templates Validation Migrations Events Storage Mail

Framework

A framework for developers, not boilerplate

Nimbus has opinions on everything — routing, queues, auth, and more. That's thousands of decisions you don't have to make. The result? Clean, idiomatic Go code your whole team can understand.

  • MVC architecture with service container and dependency injection
  • Expressive ORM with relationships, eager loading, and query scopes
  • Open source ecosystem of packages — auth, social, queues, and more
Explore the framework
routes/web.gocontrollers/
package routes

import "github.com/CodeSyncr/nimbus/router"

func Register(r *router.Router) {
  // Public routes
  r.Get("/", controllers.Home.Index)
  r.Get("/posts/:slug", controllers.Posts.Show)

  // Authenticated group
  r.Group(func(g *router.Group) {
    g.Middleware("auth")
    g.Resource("/dashboard", controllers.Dashboard)
    g.Post("/posts", controllers.Posts.Store)
  })
}

ORM & Database

Query your data beautifully

The Nimbus ORM wraps Go's database/sql in a fluent, expressive API. Write queries that read like English, manage schema with migrations, and define relationships that just work.

  • HasOne, HasMany, BelongsTo, ManyToMany with eager loading
  • Chainable query builder — where, orderBy, paginate, scopes
  • PostgreSQL, MySQL, and SQLite support out of the box
Read the ORM docs
app/models/user.go
type User struct {
  nimbus.Model
  Name    string
  Email   string
  Posts   []Post
  Profile Profile
}

// Fetch active users with their posts
users, _ := nimbus.DB[User]().
  Where("active", true).
  With("Posts", "Profile").
  OrderBy("created_at", "desc").
  Paginate(1, 20)

// Create with relationship
user.Related("Posts").Create(Post{
  Title: "Hello, Nimbus!",
})

Authentication

Auth scaffolding in a single command

Generate a complete authentication system — sessions, tokens, or OAuth — with one CLI command. Guards, middleware, and password hashing are included and wired up automatically.

  • Session-based, token-based, and OAuth2 authentication guards
  • Policies and role-based access control built-in
  • Social login via GitHub, Google, Twitter and more
Explore auth docs
app/middleware/auth.go
// Generated by: nimbus make:auth

func AuthMiddleware(ctx *http.Context) error {
  user, err := auth.Authenticate(ctx)
  if err != nil {
    return ctx.Redirect("/login")
  }

  ctx.Set("user", user)
  return ctx.Next()
}

// Protect any route group
r.Group(func(g *router.Group) {
  g.Middleware(middleware.Auth)
  g.Get("/account", handlers.Account)
})

Everything included

Batteries included, from day one

Every Nimbus app ships with a complete, battle-tested toolkit. No plugin hunting required.

Validation

Declarative request validation with structured error messages returned to clients automatically.

Migrations

Version your schema alongside your code. Roll forward, roll back, and never lose data again.

Job Queues

Dispatch background jobs to Redis, database, or in-memory. Retries, delays, and priority queues built-in.

Nimbus Templates

Server-rendered HTML with layouts, partials, and live hot-reload. Edit and see changes instantly.

Mail

Beautiful HTML emails via SMTP, SES, and Resend. Preview locally in your browser before sending.

Events & Listeners

Typed event emitter with sync and async listeners. Decouple your business logic cleanly.

File Storage

Local, S3-compatible, and GCS drivers behind a unified interface. Manage uploads with ease.

Testing

HTTP testing helpers, database factories, and mocks out of the box. Ship with confidence.

CLI Scaffolding

Generate controllers, models, migrations, and middleware in seconds with the Nimbus CLI.

~0ms
Cold start overhead
Go
Runtime performance
30+
Built-in packages
1 cmd
To scaffold a new app

Community

Trusted by Go developers

What developers say after switching to Nimbus for their Go backends.

★★★★★

"I've been writing Go APIs for years and always missed the DX of Laravel. Nimbus finally brings that elegance to Go without sacrificing performance."

AK
Arjun Kapoor
Senior Engineer, Razorpay
★★★★★

"The CLI alone saves hours per project. Scaffold a full auth system in one command, migrations run perfectly, and the ORM just makes sense."

SM
Sophie Martin
Founder, Pulseapp
★★★★★

"We migrated our Node.js API to Nimbus in a weekend. The idioms are familiar, the code is cleaner, and we're running 3× faster at half the memory."

TN
Taro Nakamura
CTO, Stackwell

Start building today

What will you ship?

Laravel style framework for Go