Repository navigation
Cardinal v0.0.2 — Middleware & Router Groups
Cardinal v0.0.2 — Middleware & Router Groups
This release makes Cardinal feel like a real framework: global middleware, per-route middleware, and router groups — all while keeping the core minimal.
✨ What’s new
- Middleware chain
r.Use(mwA, mwB)— global middlewares (Recover, Logging, RateLimit sample)router.Middleware=func(Handler) Handler
- Per-route middleware
SHOWWith(path, h, ...mw)/INPUTWith(path, h, ...mw)- Order of execution: globals → route → handler
- Router groups
grp := r.Group("/secure", mw...)with optional nesting- Group middlewares apply after globals and before route middlewares
- Execution order: globals → group(s) → route → handler
- Examples & docs
- Updated examples showing HMAC/RateLimit as route/group middlewares
- README sections for Middleware and Groups
- (Bonus) Emulator
- Lightweight web emulator at
/emufor interactive testing (if you’ve mounted it)
- Lightweight web emulator at
🧭 Usage snippets
Global middleware
r.Use(middleware.Recover(), middleware.Logging(log.Default()))