All Projects → byte-power → rockgo

byte-power / rockgo

Licence: MIT License
Framework for build web application, focus on improve develop speed and software quality.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to rockgo

sitefox
Node + cljs backend web framework
Stars: ✭ 180 (+900%)
Mutual labels:  webframework
digwebs
A tiny Python web framework that power the web app
Stars: ✭ 16 (-11.11%)
Mutual labels:  webframework
koaton
Koaton is a CLI tool that provides a nice starting point for full stack JavaScript Web development with Koa, Ember, and Node.js along with CaminateJS and WebSockets.
Stars: ✭ 28 (+55.56%)
Mutual labels:  webframework
Teapot
Teapot micro web framework for Pharo Smalltalk
Stars: ✭ 86 (+377.78%)
Mutual labels:  webframework
faces
Jakarta Faces
Stars: ✭ 44 (+144.44%)
Mutual labels:  webframework
anansi
React web applications for perfectionists with deadlines
Stars: ✭ 35 (+94.44%)
Mutual labels:  webframework
presley
Presley - A lightweight web framework for Windows
Stars: ✭ 26 (+44.44%)
Mutual labels:  webframework
fullmoon
Fast and minimalistic Redbean-based Lua web framework in one file.
Stars: ✭ 237 (+1216.67%)
Mutual labels:  webframework
elton
High performance, simple Go web framework
Stars: ✭ 61 (+238.89%)
Mutual labels:  webframework
Ballista
a Express style webframework for Igropyr (Chez Scheme http-server)
Stars: ✭ 15 (-16.67%)
Mutual labels:  webframework
sgo
A simple, light and fast Web framework written in Go.
Stars: ✭ 75 (+316.67%)
Mutual labels:  webframework
waspy
WASP framework for Python
Stars: ✭ 43 (+138.89%)
Mutual labels:  webframework
darpi
A rust web framework with safety and speed in mind.
Stars: ✭ 32 (+77.78%)
Mutual labels:  webframework
flask-empty-api
AZAP Flask boilerplate for creating API's with flask.
Stars: ✭ 15 (-16.67%)
Mutual labels:  webframework
polix
🚀 Node.js Web Framework
Stars: ✭ 32 (+77.78%)
Mutual labels:  webframework
firmeve
a out-of-the-box, full-featured go framework supporting http, http2, websocket, tcp, udp, rpc and microservice
Stars: ✭ 36 (+100%)
Mutual labels:  webframework
goweb
A gin-like simple golang web framework.
Stars: ✭ 22 (+22.22%)
Mutual labels:  webframework
poseidon
A no-dependency, intuitive, and lightweight web framework from scratch in Javascript
Stars: ✭ 41 (+127.78%)
Mutual labels:  webframework
ulboracms
Ulbora CMS is a self-contained CMS (no database needed) written in Golang. It uses a JSON datastore with content saved in both json files and in memory. You can download and upload a single binary backup file containing content, images, and templates as needed. It also has a built-in mail sender.
Stars: ✭ 42 (+133.33%)
Mutual labels:  webframework
spirit-router
fast router for spirit
Stars: ✭ 28 (+55.56%)
Mutual labels:  webframework

RockGo Application Framework

RockGo is fast, simple application framework for Go.

RockGo is agent to iris, fluentd, statsd, zap and sentry too. It make easy to build perfect application or service.

Features

  • Application
    • Service, ServiceGroup
    • Config
    • Basic middleware
      • Access log
      • recover & metric
    • Logger integration
    • Metric (Stats)
    • Sentry
  • Log
    • Logger, Output, Format
    • zap
    • fluent
  • Crypto
    • AES
    • Digest (MD5, SHA1/256/512)
    • RSA
  • Example
    • Route - Application, Config
    • Metric & Sentry

Example

Please visit example.

Install

  • go get
$ go get github.com/byte-power/rockgo
  • Add import
import "github.com/byte-power/rockgo/rock"
  • Add config file named "rockgo.yaml" for internal modules on your settings directory
app_name: myapp
log:
  LoggerName:
    console:
    fluent:
      level: info
      host: "myfluenthost.com"
      port: 24224
      async: true
metric:
  host: "127.0.0.1:8125"
sentry:
  dsn: "http://[email protected]/1"
  repanic: true
  • Append routes, middlewares and then Run server
func main() {
  // load each config file include rockgo.yaml in the directory to create Application
  app, err := rock.NewApplication("settings")
  if err != nil {
    panic(err)
  }
  // register route handler with Service
  app.Serve("root", "/").Get(func(ctx iris.Context) {
    ctx.StatusCode(http.StatusOK)
    ctx.Text("Hello RockGo")
  })
  groupArt := app.ServeGroup("article", "/arts")
  groupArt.Use(/* append middleware working on the group only, e.g. authentication */)
  groupArt.Serve("root", "/").Get(func(ctx iris.Context) {
    // do something to response /arts/
  })
  err = app.Run(":8080")
  if err != nil {
    panic(err)
  }
}

License

MIT

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].