eagle

๐Ÿฆ… A Go framework for the API or Microservice

MIT License

Stars
1.8K
Committers
21

๐Ÿฆ… eagle

A Go framework suitable for rapid business development, which can quickly build API services or Web sites. English | ไธญๆ–‡ๆ–‡ๆกฃ

Features

Framework Layered Architecture

Logic Layered Architecture

Eagle utilizes a classic layered structure and employs the Wire dependency injection framework to enhance modularity and reduce coupling between components.

Directory Structure

โ”œโ”€โ”€ Makefile                     
โ”œโ”€โ”€ api                          
โ”œโ”€โ”€ cmd                          
โ”œโ”€โ”€ config                       
โ”œโ”€โ”€ docs                         
โ”œโ”€โ”€ internal                     
โ”‚   โ”œโ”€โ”€ cache                    
โ”‚   โ”œโ”€โ”€ handler                  
โ”‚   โ”œโ”€โ”€ middleware               
โ”‚   โ”œโ”€โ”€ model                    
โ”‚   โ”œโ”€โ”€ dao                      
โ”‚   โ”œโ”€โ”€ ecode                    
โ”‚   โ”œโ”€โ”€ routers                  
โ”‚   โ”œโ”€โ”€ server                   
โ”‚   โ””โ”€โ”€ service                  
โ”œโ”€โ”€ logs                         
โ”œโ”€โ”€ main.go                      
โ”œโ”€โ”€ pkg                          
โ”œโ”€โ”€ test                         
โ””โ”€โ”€ scripts                      

Installtion CLI

GOPROXY="https://goproxy.cn,direct"

# go >= 1.16
go install github.com/go-eagle/eagle/cmd/eagle@latest

# go < 1.16
go get github.com/go-eagle/eagle/cmd/eagle

Quick Start

# only gen a server with http
eagle new eagle-demo
# or 
eagle new github.com/foo/eagle-demo

# gen a server with http and gRPC
eagle new -b=main eagle-demo
# or 
eagle new github.com/foo/eagle-demo

# install dependence
go mod tidy

# run
make run

Documentation

https://go-eagle.org/

CHANGELOG

Who is using

Discussion

Microservice Roadmap

Contributing

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  • Fork the repository to your own GitHub account.
  • Create a new branch for your changes.
  • Make your changes to the code.
  • Commit your changes and push the branch to your forked repository.
  • Open a pull request on our repository.

Stargazers over time

License

MIT. See the LICENSE file for details.

Package Rankings
Top 2.47% on Proxy.golang.org
Badges
Extracted from project README's
GitHub Workflow Status codecov GolangCI godoc Gitter Go Report Card gitmoji License Leagle Layout Arch Stargazers over time
Related Projects