Laravel style framework for Go
Framework
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.
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
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.
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
Generate a complete authentication system — sessions, tokens, or OAuth — with one CLI command. Guards, middleware, and password hashing are included and wired up automatically.
// 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
Every Nimbus app ships with a complete, battle-tested toolkit. No plugin hunting required.
Declarative request validation with structured error messages returned to clients automatically.
Version your schema alongside your code. Roll forward, roll back, and never lose data again.
Dispatch background jobs to Redis, database, or in-memory. Retries, delays, and priority queues built-in.
Server-rendered HTML with layouts, partials, and live hot-reload. Edit and see changes instantly.
Beautiful HTML emails via SMTP, SES, and Resend. Preview locally in your browser before sending.
Typed event emitter with sync and async listeners. Decouple your business logic cleanly.
Local, S3-compatible, and GCS drivers behind a unified interface. Manage uploads with ease.
HTTP testing helpers, database factories, and mocks out of the box. Ship with confidence.
Generate controllers, models, migrations, and middleware in seconds with the Nimbus CLI.
Community
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."
"The CLI alone saves hours per project. Scaffold a full auth system in one command, migrations run perfectly, and the ORM just makes sense."
"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."
Laravel style framework for Go