Skip to content

lowl11/boost

Repository files navigation

| |__   ___   ___  ___| |_
| '_ \ / _ \ / _ \/ __| __|
| |_) | (_) | (_) \__ \ |_
|_.__/ \___/ \___/|___/\__|

Minimalist Go framework based on FastHTTP

Boosted Get Started

import (
    "github.com/lowl11/boost"
    "net/http"
)

func main() {
    app := boost.New()
    
    app.GET("/ping", func(ctx boost.Context) error {
        return ctx.
            Status(http.StatusOK).
            String("pong")
    })

    app.GET("/hello", func(ctx boost.Context) error {
        return ctx.Ok("world")
    })
    
    app.Run(":8080")	
}

Features

Feature Description Status
Logging Static call of log functions from anywhere
Config Get environment & .yml config file from anywhere
Errors Custom errors with rich context
Easy controllers Base controller to easy returning responses
HTTP Requests Sending HTTP requests client with retries
Websocket Handle websocket requests/connections
Request body validator Validating incoming request body (JSON) based on go-playground validator
Health checker Health checking service (self-app + any other)
Cache Memory & Redis cache client
RabbitMQ / MessageBus Message bus pattern + RMQ support
Kafka Kafka producer & consumers
DI Dependency Injection
Cron Cron Job actions support
gRPC gRPC server & client support
Database Powerful query builders with run
Swagger Default static swagger route

TODO

  • gateway (proxy router)
  • Rate limiter

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published