matterbridge/vendor/github.com/labstack/echo
2018-08-06 21:47:05 +02:00
..
middleware Update vendor labstack/echo 2018-02-21 00:48:10 +01:00
.editorconfig Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
.gitattributes Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
.gitignore Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
.travis.yml Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
bind.go Update vendor 2017-06-06 00:04:18 +02:00
context.go Update vendor labstack/echo 2018-02-21 00:48:10 +01:00
echo_go1.8.go Update vendor 2017-06-06 00:04:18 +02:00
echo.go Update vendor labstack/echo 2018-02-21 00:48:10 +01:00
Gopkg.lock Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
group.go Update vendor labstack/echo 2018-02-21 00:48:10 +01:00
LICENSE Update vendor 2017-02-18 23:11:48 +01:00
log.go Update vendor 2017-02-18 23:11:48 +01:00
Makefile Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
README.md Use mod vendor for vendored directory (backwards compatible) 2018-08-06 21:47:05 +02:00
response.go Update vendor labstack/echo 2018-02-21 00:48:10 +01:00
router.go Update vendor labstack/echo 2018-02-21 00:48:10 +01:00
util_go17.go Update vendor labstack/echo 2017-12-07 23:00:56 +01:00
util_go18.go Update vendor labstack/echo 2017-12-07 23:00:56 +01:00

Sourcegraph GoDoc Go Report Card Build Status Codecov Join the chat at https://gitter.im/labstack/echo Forum Twitter License

Feature Overview

  • Optimized HTTP router which smartly prioritize routes
  • Build robust and scalable RESTful APIs
  • Group APIs
  • Extensible middleware framework
  • Define middleware at root, group or route level
  • Data binding for JSON, XML and form payload
  • Handy functions to send variety of HTTP responses
  • Centralized HTTP error handling
  • Template rendering with any template engine
  • Define your format for the logger
  • Highly customizable
  • Automatic TLS via Lets Encrypt
  • HTTP/2 support

Performance

Guide

Example

package main

import (
	"net/http"

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

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

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

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

	// Start server
	e.Logger.Fatal(e.Start(":1323"))
}

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

Help

Contribute

Use issues for everything

  • For a small change, just send a PR.
  • For bigger changes open an issue for discussion before sending a PR.
  • PR should have:
    • Test case
    • Documentation
    • Example (If it makes sense)
  • You can also contribute by:
    • Reporting issues
    • Suggesting new features or enhancements
    • Improve/fix documentation

Credits

License

MIT