Skip to content
forked from labstack/echo

Echo is a fast 🚀 and unfancy micro web framework for Go.

License

Notifications You must be signed in to change notification settings

johannesboyne/echo

 
 

Repository files navigation

NOTICE

A fast and unfancy micro web framework for Go.

Features

  • Fast HTTP router which smartly prioritize routes.
  • Run with standard HTTP server or FastHTTP server.
  • Extensible middleware framework.
  • Router groups with nesting.
  • Handy functions to send variety of HTTP responses.
  • Centralized HTTP error handling.
  • Template rendering with any template engine.

Performance

Based on [vishr/go-http-routing-benchmark] (https://github.com/vishr/go-http-routing-benchmark), June 5, 2015.

Performance

Getting Started

Installation

$ go get github.com/labstack/echo/...

Hello, World!

Create main.go

package main

import (
	"net/http"

	"github.com/labstack/echo"
	"github.com/labstack/echo/engine/standard"
	"github.com/labstack/echo/middleware"
)

// Handler
func hello() echo.HandlerFunc {
	return func(c echo.Context) error {
		return c.String(http.StatusOK, "Hello, World!\n")
	}
}

func main() {
	// Echo instance
	e := echo.New()

	// Middleware
	e.Use(middleware.Logger())
	e.Use(middleware.Recover())

	// Routes
	e.Get("/", hello())

	// Start server
	e.Run(standard.New(":1323"))
}

Start server

$ go run main.go

Browse to http://localhost:1323 and you should see Hello, World! on the page.

Next

Need help?

Want to support us?

Contribute

Use issues for everything

  • Report issues
  • Discuss on chat before sending a pull request
  • Suggest new features or enhancements
  • Improve/fix documentation

Credits

License

MIT

About

Echo is a fast 🚀 and unfancy micro web framework for Go.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 99.8%
  • HTML 0.2%