{"id":40992726,"url":"https://github.com/qclaogui/gaip","last_synced_at":"2026-01-22T07:42:01.242Z","repository":{"id":144313238,"uuid":"157074718","full_name":"qclaogui/gaip","owner":"qclaogui","description":"Practices for implementing Google API Improvement Proposals (AIP) in Go.","archived":false,"fork":false,"pushed_at":"2025-12-22T07:07:23.000Z","size":20098,"stargazers_count":1,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-23T02:22:44.864Z","etag":null,"topics":["aip","go","golang","grpc","grpc-go"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qclaogui.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":"COPYRIGHT","agents":null,"dco":null,"cla":null}},"created_at":"2018-11-11T11:54:38.000Z","updated_at":"2025-12-21T09:44:06.000Z","dependencies_parsed_at":"2023-10-10T18:49:41.764Z","dependency_job_id":"41653edc-7281-42ca-a1cc-73885df3342a","html_url":"https://github.com/qclaogui/gaip","commit_stats":null,"previous_names":["qclaogui/gaip","qclaogui/golang-api-server"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/qclaogui/gaip","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qclaogui%2Fgaip","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qclaogui%2Fgaip/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qclaogui%2Fgaip/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qclaogui%2Fgaip/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qclaogui","download_url":"https://codeload.github.com/qclaogui/gaip/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qclaogui%2Fgaip/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28658161,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["aip","go","golang","grpc","grpc-go"],"created_at":"2026-01-22T07:42:01.185Z","updated_at":"2026-01-22T07:42:01.231Z","avatar_url":"https://github.com/qclaogui.png","language":"Go","readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003egolang AIP server demo\u003c/h1\u003e\n\u003c/div\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/qclaogui/gaip/actions/workflows/ci.yml\"\u003e\n  \u003cimg src=\"https://github.com/qclaogui/gaip/actions/workflows/ci.yml/badge.svg\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://goreportcard.com/report/github.com/qclaogui/gaip\"\u003e\n  \u003cimg src=\"https://goreportcard.com/badge/github.com/qclaogui/gaip?v=1\" /\u003e\n\u003c/a\u003e\n\u003ca href=\"https://hub.docker.com/r/qclaogui/gaip\"\u003e\n  \u003cimg src=\"https://img.shields.io/docker/pulls/qclaogui/gaip.svg\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/qclaogui/gaip/blob/master/LICENSE\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/license/qclaogui/gaip.svg\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/qclaogui/gaip/tags\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/last-commit/qclaogui/gaip\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\nPractices for implementing [Google API Improvement Proposals](https://aip.dev/) (AIP) in Go.\n\nApply knowledge and experience to improve open source\n\n## Dependencies\n\nThis project uses [bingo](https://github.com/bwplotka/bingo) (located in [.bingo/](.bingo/)), a tool to automate the versioning of Go packages.\n\nRun `make install-build-deps` to install dependencies tools.\n\n```shell\n❯ make help\n\nUsage:\n  make \u003ctarget\u003e\n\nBuild\n  build                                     Build binary for current OS and place it at ./bin/gaip_$(GOOS)_$(GOARCH)\n  build-all                                 Build binaries for Linux and Mac and place them in dist/\n  clean                                     Remove artefacts or generated files from previous build\n\nDependencies\n  check-go-mod                              Ensures fresh go.mod and go.sum.\n  install-build-deps                        Install dependencies tools\n\nEnt Schema\n  ent-gen                                   Regenerate schema\n  ent-describe                              Get a description of graph schema\n  atlas-lint                                Verifying and linting migrations\n\nRegenerate gRPC Code\n  protoc-install                            Install proper protoc version\n  protoc-gen                                Regenerate proto by protoc\n\nTesting Lint \u0026 Fmt\n  test                                      Run tests.\n  lint                                      Runs various static analysis against our code.\n  fmt                                       Runs fmt code (automatically fix lint errors)\n\nKubernetes\n  cluster                                   Create k3s cluster\n  manifests                                 Generates Kubernetes manifests\n\nRelease\n  prepare-release-candidate                 Create release candidate\n  prepare-release                           Create release\n  print-version                             Prints the upcoming release number\n\nGeneral\n  reference-help                            Generates the reference help documentation.\n  help                                      Display this help. Thanks to https://www.thapaliya.com/en/writings/well-documented-makefiles/\n```\n\n[Automatic Migration planning script](https://entgo.io/docs/versioned/programmatically#2-automatic-migration-planning-script)\n\n```shell\ndocker run --rm --name atlas-db-dev -d -p 3306:3306 -e MYSQL_DATABASE=dev -e MYSQL_ROOT_PASSWORD=pass mysql:8\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqclaogui%2Fgaip","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqclaogui%2Fgaip","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqclaogui%2Fgaip/lists"}