https://github.com/alimy/echo
High performance, minimalist Go web framework
https://github.com/alimy/echo
go http website
Last synced: 6 months ago
JSON representation
High performance, minimalist Go web framework
- Host: GitHub
- URL: https://github.com/alimy/echo
- Owner: alimy
- License: mit
- Fork: true (labstack/echo)
- Created: 2018-12-29T11:24:29.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-12-19T14:05:38.000Z (over 7 years ago)
- Last Synced: 2024-10-02T09:07:26.645Z (over 1 year ago)
- Topics: go, http, website
- Language: Go
- Homepage: https://echo.labstack.com
- Size: 4.9 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://sourcegraph.com/github.com/labstack/echo?badge)
[](http://godoc.org/github.com/labstack/echo)
[](https://goreportcard.com/report/github.com/labstack/echo)
[](https://travis-ci.org/labstack/echo)
[](https://codecov.io/gh/labstack/echo)
[](https://gitter.im/labstack/echo)
[](https://forum.labstack.com)
[](https://twitter.com/labstack)
[](https://raw.githubusercontent.com/labstack/echo/master/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 Let’s Encrypt
- HTTP/2 support
## Benchmarks
Date: 2018/03/15
Source: https://github.com/vishr/web-framework-benchmark
Lower is better!

## [Guide](https://echo.labstack.com/guide)
### Example
```go
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
- [Forum](https://forum.labstack.com)
- [Chat](https://gitter.im/labstack/echo)
## 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
- [Vishal Rana](https://github.com/vishr) - Author
- [Nitin Rana](https://github.com/nr17) - Consultant
- [Contributors](https://github.com/labstack/echo/graphs/contributors)
## License
[MIT](https://github.com/labstack/echo/blob/master/LICENSE)