


package main
import "gofr.dev/pkg/gofr"
func main() { app := gofr.New()
app.GET("/hello", func(c *gofr.Context) (interface{}, error) { return "Hello GoFr!", nil })
app.Run()}Built over years running production workloads at great scale in a variety of industries.
Goodness of Metrics, Traces and Logs without a single line of code. Traces to OpenTelemetry compatible providers, Metrics in Prometheus Format.
Default behaviour is how 'you' would design a REST API. Status codes, response formats - all taken care of by GoFr automagically.
Elevate productivity effortlessly with predefined middleware, while retaining flexibility through seamless integration of custom middleware tailored to your specific needs.
Following the 12-factor config principles for maintaining application configurations, simplify the integration of data sources like MySQL, Postgres, Kafka, Google Pubsub, NATS JetStream and others.
GoFr catches panics and automatically recovers to maintain continuous availability of your server.


Christophe Colombier
Senior Architect | Open Source Enthusiast

Aditya Joshi
Senior Software Engineer, Walmart

Manosh Malai
CTO, Mydbops

Praveen Kumar
Founder, apnerve labs

Shridhar Vijay Kumar
Software Engineer, Doceree

Vineet Dwivedi
Founder & CEO, LaunchX

Aayush Mishra
Data Analyst, American Express

Vignesh Palanichamy
Lead Consultant at Thoughtworks