dinever / Golf
Licence: mit
⛳️ The Golf web framework
Stars: ✭ 248
Programming Languages
go
31211 projects - #10 most used programming language
Projects that are alternatives of or similar to Golf
Iris
The fastest HTTP/2 Go Web Framework. AWS Lambda, gRPC, MVC, Unique Router, Websockets, Sessions, Test suite, Dependency Injection and more. A true successor of expressjs and laravel | 谢谢 https://github.com/kataras/iris/issues/1329 |
Stars: ✭ 21,587 (+8604.44%)
Mutual labels: middleware, framework, server, router
Twig
Twig - less is more's web server for golang
Stars: ✭ 98 (-60.48%)
Mutual labels: middleware, framework, webframework, router
Gin
Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
Stars: ✭ 53,971 (+21662.5%)
Mutual labels: middleware, framework, server, router
Dragon
⚡A powerful HTTP router and URL matcher for building Deno web servers.
Stars: ✭ 56 (-77.42%)
Mutual labels: middleware, framework, server, router
Pure Http
✨ The simple web framework for Node.js with zero dependencies.
Stars: ✭ 139 (-43.95%)
Mutual labels: middleware, framework, server, router
Webgo
A minimal framework to build web apps; with handler chaining, middleware support; and most of all standard library compliant HTTP handlers(i.e. http.HandlerFunc).
Stars: ✭ 165 (-33.47%)
Mutual labels: middleware, webframework, router
Ego
Ego is a full-stack web framework written in Go, lightweight and efficient front-end component solutions, based on gin. The front-end is compiled, does not affect the back-end.
Stars: ✭ 185 (-25.4%)
Mutual labels: middleware, framework, server
Gear
A lightweight, composable and high performance web service framework for Go.
Stars: ✭ 544 (+119.35%)
Mutual labels: middleware, framework, router
Zen
zen is a elegant and lightweight web framework for Go
Stars: ✭ 257 (+3.63%)
Mutual labels: middleware, framework, router
Spock
Another Haskell web framework for rapid development
Stars: ✭ 623 (+151.21%)
Mutual labels: framework, webframework, server
Min
A minimalistic web framework with route grouping and middleware chaining
Stars: ✭ 95 (-61.69%)
Mutual labels: middleware, framework, router
Dotweb
Simple and easy go web micro framework
Stars: ✭ 1,354 (+445.97%)
Mutual labels: middleware, webframework, router
Foxify
The fast, easy to use & typescript ready web framework for Node.js
Stars: ✭ 138 (-44.35%)
Mutual labels: middleware, framework, router
Discord Backup
📦 Complete framework to facilitate server backup using discord.js v12
Stars: ✭ 172 (-30.65%)
Mutual labels: framework, server
Routerify
A lightweight, idiomatic, composable and modular router implementation with middleware support for the Rust HTTP library hyper.rs
Stars: ✭ 173 (-30.24%)
Mutual labels: middleware, router
Sifrr
⚡️ Set of tiny, independent libraries for creating modern and fast webapps with javascript/typescript
Stars: ✭ 174 (-29.84%)
Mutual labels: framework, server
Middy
🛵 The stylish Node.js middleware engine for AWS Lambda
Stars: ✭ 2,592 (+945.16%)
Mutual labels: middleware, framework
Autoserver
Create a full-featured REST/GraphQL API from a configuration file
Stars: ✭ 188 (-24.19%)
Mutual labels: framework, server
Actionhero
Actionhero is a realtime multi-transport nodejs API Server with integrated cluster capabilities and delayed tasks
Stars: ✭ 2,280 (+819.35%)
Mutual labels: framework, server
A fast, simple and lightweight micro-web framework for Go, comes with powerful features and has no dependencies other than the Go Standard Library.
Homepage: golf.readme.io
Installation
go get github.com/dinever/golf
Features
-
No allocation during routing and parameter retrieve.
-
Dead simple template inheritance with
extends
andinclude
helper comes out of box.layout.html
<h1>Hello World</h1> {{ template "body" }} {{ include "sidebar.html" }}
index.html
{{ extends "layout.html" }} {{ define "body"}} <p>Main content</p> {{ end }}
sidebar.html
<p>Sidebar content</p>
-
Built-in XSRF and Session support.
-
Powerful middleware chain.
-
Configuration from JSON file.
Hello World
package main
import "github.com/dinever/golf"
func mainHandler(ctx *golf.Context) {
ctx.Send("Hello World!")
}
func pageHandler(ctx *golf.Context) {
ctx.Send("Page: " + ctx.Param("page"))
}
func main() {
app := golf.New()
app.Get("/", mainHandler)
app.Get("/p/:page/", pageHandler)
app.Run(":9000")
}
The website will be available at http://localhost:9000.
Benchmark
The following chart shows the benchmark performance of Golf compared with others.
For more information, please see BENCHMARKING.md
Docs
License
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].