Beautiful, enterprise-grade console logging for Go.
Aurora is a zero-dependency logging library that makes your terminal output stunning. Features gradient-colored ASCII banners, structured logging with tree-style output, progress bars, spinners, tables, and more.
go get github.com/Summaw/aurorapackage main
import "github.com/Summaw/aurora"
func main() {
aurora.Banner("MYAPP").
Gradient("cyberpunk").
Tagline("My Application").
Version("v1.0.0").
Render()
log := aurora.New()
log.Info("Application started").Send()
log.Success("Database connected").Str("host", "localhost").Send()
log.Warn("High memory usage").Int("percent", 85).Send()
log.Error("Connection failed").Err(err).Send()
}aurora.Banner("AURORA").
Font("block"). // block, slant, minimal
Gradient("cyberpunk"). // 20+ built-in gradients
Tagline("My App").
Version("v1.0.0").
Border("rounded"). // rounded, sharp, double, heavy, ascii
Render()log := aurora.New()
log.Info("Request completed").
Str("method", "POST").
Str("path", "/api/users").
Int("status", 201).
Dur("latency", time.Since(start)).
Send()Output:
14:23:01.123 β INFO Request completed
ββ method: POST
ββ path: /api/users
ββ status: 201
ββ latency: 23.45ms
log.Trace("Trace message") // β¦ gray
log.Debug("Debug message") // β dark gray
log.Info("Info message") // β blue
log.Success("Success message") // β green
log.Warn("Warning message") // β yellow
log.Error("Error message") // β red
log.Fatal("Fatal message") // π bright red (exits)log := aurora.New(
aurora.WithLevel(aurora.DebugLevel),
aurora.WithCaller(true),
aurora.WithJSON(true), // JSON output for production
)aurora.Table(
[]string{"Service", "Status", "Latency"},
[][]string{
{"api", "β Healthy", "12ms"},
{"db", "β Healthy", "3ms"},
},
).Gradient("mint").Render()bar := aurora.Progress("Downloading", 100)
for i := 0; i <= 100; i++ {
bar.Set(i)
time.Sleep(50 * time.Millisecond)
}
bar.Done()spin := aurora.Spin("Connecting...")
// ... work ...
spin.Success("Connected!")aurora.Divider("Configuration").Render()
aurora.KV(map[string]any{
"Environment": "production",
"Version": "1.0.0",
}).Render()aurora, sunset, ocean, neon, cyberpunk, miami, fire, forest, galaxy, retro, mint, peach, lavender, gold, ice, blood, matrix, vaporwave, rainbow, terminal, rose, sky
aurora.Banner("APP").GradientRGB(
aurora.RGB(255, 0, 128),
aurora.RGB(0, 255, 255),
).Render()
aurora.Banner("APP").GradientMulti(
"#ff0000", "#ff7f00", "#ffff00", "#00ff00",
).Render()aurora/
βββ aurora.go # Main public API
βββ logger.go # Logger implementation
βββ entry.go # Entry/field chaining
βββ level.go # Log levels
βββ config.go # Configuration
βββ options.go # Functional options
βββ pkg/
β βββ banner/ # ASCII banner system
β βββ color/ # Color & gradient engine
β βββ style/ # UI components
βββ middleware/ # HTTP middleware
βββ docs/ # Documentation
βββ _examples/ # Example code
MIT License - see LICENSE for details.
If Aurora makes your logs easier to read, debug, or demo:
-
β Star this repository to support the project
-
π Open an issue if you find a bug or have an idea
-
π§ Submit a PR β contributions are welcome
-
π¬ Share Aurora with your team or community
Every star helps Aurora grow and motivates future features π