{"id":26632440,"url":"https://github.com/1024casts/snake","last_synced_at":"2025-03-24T15:03:00.160Z","repository":{"id":38396052,"uuid":"139867270","full_name":"go-eagle/eagle","owner":"go-eagle","description":"🦅 A Go framework for the API or Microservice","archived":false,"fork":false,"pushed_at":"2024-10-29T07:05:16.000Z","size":5779,"stargazers_count":2112,"open_issues_count":20,"forks_count":232,"subscribers_count":27,"default_branch":"master","last_synced_at":"2024-10-29T15:21:28.936Z","etag":null,"topics":["cloud-native","eagle","framework","gin","go","golang","gorm","grpc","http","microservice","restful"],"latest_commit_sha":null,"homepage":"https://go-eagle.org","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/go-eagle.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-07-05T15:18:41.000Z","updated_at":"2024-10-29T07:05:14.000Z","dependencies_parsed_at":"2023-09-23T16:34:59.007Z","dependency_job_id":"ebbdfd14-7dc9-4e9e-a904-1da8ea74a781","html_url":"https://github.com/go-eagle/eagle","commit_stats":{"total_commits":1415,"total_committers":23,"mean_commits":61.52173913043478,"dds":0.07985865724381624,"last_synced_commit":"9307c198e4d9624a4d2938101c1a21cf4acdc523"},"previous_names":["1024casts/snake"],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-eagle%2Feagle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-eagle%2Feagle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-eagle%2Feagle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-eagle%2Feagle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/go-eagle","download_url":"https://codeload.github.com/go-eagle/eagle/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245294758,"owners_count":20591899,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-native","eagle","framework","gin","go","golang","gorm","grpc","http","microservice","restful"],"created_at":"2025-03-24T15:01:33.969Z","updated_at":"2025-03-24T15:03:00.132Z","avatar_url":"https://github.com/go-eagle.png","language":"Go","readme":"# 🦅 eagle\n\n [![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/go-eagle/eagle/test.yml?branch=master\u0026style=flat-square)](https://github.com/go-eagle/eagle)\n [![codecov](https://codecov.io/gh/go-eagle/eagle/branch/master/graph/badge.svg)](https://codecov.io/gh/go-eagle/eagle)\n [![GolangCI](https://golangci.com/badges/github.com/golangci/golangci-lint.svg)](https://golangci.com)\n [![godoc](https://godoc.org/github.com/go-eagle/eagle?status.svg)](https://godoc.org/github.com/go-eagle/eagle)\n [![Gitter](https://badges.gitter.im/go-eagle/eagle.svg)](https://gitter.im/go-eagle/eagle?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge)\n \u003ca href=\"http://opentracing.io\"\u003e\u003cimg src=\"https://img.shields.io/badge/OpenTracing-enabled-blue.svg\" alt=\"OpenTracing Badge\"\u003e\u003c/a\u003e\n [![Go Report Card](https://goreportcard.com/badge/github.com/go-eagle/eagle)](https://goreportcard.com/report/github.com/go-eagle/eagle)\n [![gitmoji](https://img.shields.io/badge/gitmoji-%20%F0%9F%98%9C%20%F0%9F%98%8D-FFDD67.svg?style=flat-square)](https://github.com/carloscuesta/gitmoji)\n [![License](https://img.shields.io/github/license/go-eagle/eagle?style=flat-square)](/LICENSE)\n\nA Go framework suitable for rapid business development, which can quickly build API services or Web sites.   \nEnglish | [中文文档](https://github.com/go-eagle/eagle/blob/master/README_ZH.md)\n\n## Features\n\n- API framework [gin](https://github.com/gin-gonic/gin) \n- RPC framework [gRPC](https://github.com/grpc/grpc-go)\n- Configuration [viper](https://github.com/spf13/viper)\n- Logging component [zap](https://github.com/uber-go/zap)\n- Database ORM component [gorm](https://github.com/go-gorm/gorm) | [MongoDB](https://github.com/mongodb/mongo-go-driver)\n- Search component [Elasticsearch](https://github.com/elastic/go-elasticsearch)\n- Cache component [go-redis](https://github.com/go-redis/redis), [ristretto](https://github.com/dgraph-io/ristretto)\n- Message Queue [Rabbitmq](https://github.com/rabbitmq/amqp091-go) | [redis](https://github.com/hibiken/asynq)\n- Authentication [JWT](https://jwt.io/) \n- Parameter Validator [validator](https://github.com/go-playground/validator)\n- Scheduled tasks [cron](https://github.com/robfig/cron)\n- Metrics monitoring [prometheus](https://github.com/prometheus/client_golang/prometheus), [grafana](https://github.com/grafana/grafana)\n- Distributed Tracing [opentelemetry](https://github.com/open-telemetry/opentelemetry-go)\n- Service registration and discovery [etcd](https://github.com/etcd-io/etcd) | [consul](https://github.com/hashicorp/consul) | [nacos](https://github.com/alibaba/nacos)\n- Unit Test [GoConvey](https://github.com/smartystreets/goconvey)\n- Lint [GolangCI-lint](https://golangci.com/)\n- CI/CD [GitHub Actions](https://github.com/actions), [docker](https://www.docker.com/), [kubernetes](https://github.com/kubernetes/kubernetes)\n\n## Framework Layered Architecture\n![eagle-framework-diagram](https://github.com/go-eagle/eagle/assets/3043638/cd05f6d5-058c-4ab0-87ee-47148e0c68aa)\n\n## Logic Layered Architecture\n\nEagle utilizes a classic layered structure and employs the Wire dependency injection framework to enhance modularity and reduce coupling between components.\n\n[![Leagle Layout Arch](https://raw.githubusercontent.com/go-eagle/eagle/master/docs/images/eagle-layout-arch.png)](https://starchart.cc/go-eagle/eagle)\n\n## Directory Structure\n\n```shell\n├── Makefile                     \n├── api                          \n├── cmd                          \n├── config                       \n├── docs                         \n├── internal                     \n│   ├── cache                    \n│   ├── handler                  \n│   ├── middleware               \n│   ├── model                    \n│   ├── dao                      \n│   ├── ecode                    \n│   ├── routers                  \n│   ├── server                   \n│   └── service                  \n├── logs                         \n├── main.go                      \n├── pkg                          \n├── test                         \n└── scripts                      \n```\n\n## Installtion CLI\n\n```bash\nGOPROXY=\"https://goproxy.cn,direct\"\n\n# go \u003e= 1.16\ngo install github.com/go-eagle/eagle/cmd/eagle@latest\n\n# go \u003c 1.16\ngo get github.com/go-eagle/eagle/cmd/eagle\n```\n\n## Quick Start\n\n```bash\n# gen a server with http and gRPC\neagle new eagle-demo\n# or \neagle new github.com/foo/eagle-demo\n\n# install dependence\ngo mod tidy\n\n# run\nmake run\n```\n\n## Documentation\n\n[https://go-eagle.org/](https://go-eagle.org/)\n\n## CHANGELOG\n\n- [CHANGELOG](https://github.com/go-eagle/eagle/blob/master/CHANGELOG.md)\n\n## Who is using\n\n- [1024casts](https://1024casts.com)\n- [FastIM](https://github.com/1024casts/fastim)\n- [Go-microservice](https://github.com/go-microservice)\n\n## Discussion\n\n- Issue: https://github.com/go-eagle/eagle/issues\n- Discord: https://discord.com/channels/968369660900814869\n\n## Microservice Roadmap\n\n![Microservice-roadmap](https://github.com/go-eagle/eagle/assets/3043638/c7ef237e-e0f9-4699-843d-54588b2bcec8)\n\n## Contributing\n\nIf 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!\n\n- Fork the repository to your own GitHub account.\n- Create a new branch for your changes.\n- Make your changes to the code.\n- Commit your changes and push the branch to your forked repository.\n- Open a pull request on our repository.\n\n## Stargazers over time\n\n[![Stargazers over time](https://starchart.cc/go-eagle/eagle.svg)](https://starchart.cc/go-eagle/eagle)\n\n## License\n\nMIT. See the [LICENSE](LICENSE) file for details.\n","funding_links":[],"categories":["开源类库","Open source library","Go"],"sub_categories":["业务框架","Business Framework"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F1024casts%2Fsnake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F1024casts%2Fsnake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F1024casts%2Fsnake/lists"}