# Beego [![Build Status](https://travis-ci.org/astaxie/beego.svg?branch=master)](https://travis-ci.org/astaxie/beego) [![GoDoc](http://godoc.org/github.com/astaxie/beego?status.svg)](http://godoc.org/github.com/astaxie/beego) [![Foundation](https://img.shields.io/badge/Golang-Foundation-green.svg)](http://golangfoundation.org) [![Go Report Card](https://goreportcard.com/badge/github.com/astaxie/beego)](https://goreportcard.com/report/github.com/astaxie/beego) Beego is used for rapid development of enterprise application in Go, including RESTful APIs, web apps and backend services. It is inspired by Tornado, Sinatra and Flask. beego has some Go-specific features such as interfaces and struct embedding. ![architecture](https://cdn.nlark.com/yuque/0/2020/png/755700/1607849779965-e243f61d-607f-4357-b292-e2c69aab1c11.png) Beego is compos of four parts: 1. Base modules: including log module, config module, governor module; 2. Task: is used for running timed tasks or periodic tasks; 3. Client: including ORM module, httplib module, cache module; 4. Server: including web module. We will support gRPC in the future; ## Quick Start [Officail website](http://beego.me) [Example](https://github.com/beego-dev/beego-example) > If you could not open official website, go to [beedoc](https://github.com/beego/beedoc) ### Web Application ![Http Request](https://cdn.nlark.com/yuque/0/2020/png/755700/1607854896328-6db5ca04-281d-453e-9843-4777ed932874.png) #### Create `hello` directory, cd `hello` directory mkdir hello cd hello #### Init module go mod init #### Download and install go get github.com/astaxie/beego@v2.0.0 #### Create file `hello.go` ```go package main import "github.com/astaxie/beego/server/web" func main() { web.Run() } ``` #### Build and run go build hello.go ./hello #### Go to [http://localhost:8080](http://localhost:8080) Congratulations! You've just built your first **beego** app. ## Features * RESTful support * [MVC architecture](https://github.com/beego/beedoc/tree/master/en-US/mvc) * Modularity * [Auto API documents](https://github.com/beego/beedoc/blob/master/en-US/advantage/docs.md) * [Annotation router](https://github.com/beego/beedoc/blob/master/en-US/mvc/controller/router.md) * [Namespace](https://github.com/beego/beedoc/blob/master/en-US/mvc/controller/router.md#namespace) * [Powerful development tools](https://github.com/beego/bee) * Full stack for Web & API ## Modules * [orm](https://github.com/beego/beedoc/tree/master/en-US/mvc/model) * [session](https://github.com/beego/beedoc/blob/master/en-US/module/session.md) * [logs](https://github.com/beego/beedoc/blob/master/en-US/module/logs.md) * [config](https://github.com/beego/beedoc/blob/master/en-US/module/config.md) * [cache](https://github.com/beego/beedoc/blob/master/en-US/module/cache.md) * [context](https://github.com/beego/beedoc/blob/master/en-US/module/context.md) * [governor](https://github.com/beego/beedoc/blob/master/en-US/module/governor.md) * [httplib](https://github.com/beego/beedoc/blob/master/en-US/module/httplib.md) * [task](https://github.com/beego/beedoc/blob/master/en-US/module/task.md) * [i18n](https://github.com/beego/beedoc/blob/master/en-US/module/i18n.md) ## Community * [http://beego.me/community](http://beego.me/community) * Welcome to join us in Slack: [https://beego.slack.com](https://beego.slack.com), you can get invited from [here](https://github.com/beego/beedoc/issues/232) * QQ Group Group ID:523992905 * [Contribution Guide](https://github.com/beego/beedoc/blob/master/en-US/intro/contributing.md). ## License beego source code is licensed under the Apache Licence, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0.html).