{"id":22117974,"url":"https://github.com/wizacklabs/protoc-gen-go","last_synced_at":"2025-07-25T11:32:51.400Z","repository":{"id":256023223,"uuid":"853613867","full_name":"wizacklabs/protoc-gen-go","owner":"wizacklabs","description":"Another protoc plugin to generate Go codes, and add customizing field tags and names support","archived":false,"fork":false,"pushed_at":"2024-09-21T06:50:28.000Z","size":21,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-25T12:42:58.794Z","etag":null,"topics":["gorm","json","protobuf","protoc-gen-go"],"latest_commit_sha":null,"homepage":"","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/wizacklabs.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":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-07T03:26:12.000Z","updated_at":"2024-09-29T03:34:00.000Z","dependencies_parsed_at":"2024-09-08T15:34:06.815Z","dependency_job_id":"f8cef5f4-4339-40d9-92aa-ea799bacb414","html_url":"https://github.com/wizacklabs/protoc-gen-go","commit_stats":null,"previous_names":["derekhjray/protoc-gen-go"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizacklabs%2Fprotoc-gen-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizacklabs%2Fprotoc-gen-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizacklabs%2Fprotoc-gen-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wizacklabs%2Fprotoc-gen-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wizacklabs","download_url":"https://codeload.github.com/wizacklabs/protoc-gen-go/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227571961,"owners_count":17788137,"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":["gorm","json","protobuf","protoc-gen-go"],"created_at":"2024-12-01T13:42:31.829Z","updated_at":"2024-12-01T13:42:33.233Z","avatar_url":"https://github.com/wizacklabs.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# protc-gen-go\n\nThe protoc-gen-go project is another protoc plugin to generate Go code for both proto2 and proto3 versions of the protocol buffer language. \n\nThe protoc-gen-go works just like official utility, and provides some new features to auto generate message field tag and custimize field name from comments.\n\nFor more information about the usage of this plugin, see: https://protobuf.dev/reference/go/go-generated.\n\n## Features\n- auto generate message field tags from comments\n- customize message field name\n\n## Limitations\n- only works for message field declaration\n\n## Installation\n```bash\ngo install github.com/derekhjray/proto-gen-go\n```\n\n## Usage\n- auto generate field tags\n    \n    protobuf source code\n    ```protobuf\n    message foo {\n        // @gorm.tag=column:id;autoIncrement\n        // @json.tag=ID\n        int64 id = 1;\n    }\n    ```\n    generated go source code\n    ```go\n    type Foo struct {\n        state         protoimpl.MessageState\n        sizeCache     protoimpl.SizeCache\n        unknownFields protoimpl.UnknownFields\n\n        Id int64 `protobuf:\"varint,1,opt,name=id,proto3\" json:\"ID,omitempty\" gorm:\"column:id;autoIncrement\"`\n    }\n    ```\n\n- customize field name\n\n    protobuf source code\n    ```protobuf\n    message foo {\n        // @go.name=ID\n        int64 id = 1;\n    }\n    ```\n    generated go source code\n    ```go\n    type Foo struct {\n        state         protoimpl.MessageState\n        sizeCache     protoimpl.SizeCache\n        unknownFields protoimpl.UnknownFields\n\n        ID int64 `protobuf:\"varint,1,opt,name=id,proto3\" json:\"id,omitempty\"`\n    }\n    ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwizacklabs%2Fprotoc-gen-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwizacklabs%2Fprotoc-gen-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwizacklabs%2Fprotoc-gen-go/lists"}