{"id":20884466,"url":"https://github.com/burmuley/go-vkapi-gen","last_synced_at":"2026-05-02T22:33:58.657Z","repository":{"id":116241877,"uuid":"220823558","full_name":"Burmuley/go-vkapi-gen","owner":"Burmuley","description":"Go VK API SDK Generator","archived":false,"fork":false,"pushed_at":"2019-12-15T04:55:48.000Z","size":172,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-19T10:42:28.352Z","etag":null,"topics":["golang","json-schema","sdk","vk-api","vkontakte","vkontakte-client","vkontakte-sdk"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Burmuley.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":"2019-11-10T17:19:56.000Z","updated_at":"2020-02-12T06:25:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"e19ae42c-d551-41b5-ba6a-e3066e01ef9f","html_url":"https://github.com/Burmuley/go-vkapi-gen","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burmuley%2Fgo-vkapi-gen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burmuley%2Fgo-vkapi-gen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burmuley%2Fgo-vkapi-gen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burmuley%2Fgo-vkapi-gen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Burmuley","download_url":"https://codeload.github.com/Burmuley/go-vkapi-gen/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243267146,"owners_count":20263798,"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":["golang","json-schema","sdk","vk-api","vkontakte","vkontakte-client","vkontakte-sdk"],"created_at":"2024-11-18T08:10:12.146Z","updated_at":"2026-05-02T22:33:58.527Z","avatar_url":"https://github.com/Burmuley.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VK API Golang SDK Generator\n\n## ! WARNING ! WORK IN PROGRESS !\n\n*Reviews appreciated!* Just create an issue with your review/question/request.\n\nTool to generate Golang (Go) SDK code for VK API implementation based on public JSON schema.\n\n### Description\n\nThis tool uses official [VK API JSON schema](https://github.com/VKCOM/vk-api-schema) as input to generate VK API SDK code for Golang.\n\nThe result code is located here: [https://github.com/Burmuley/go-vkapi](https://github.com/Burmuley/go-vkapi).\nSee [README.md](https://github.com/Burmuley/go-vkapi/blob/master/README.md) in the target repository for details about SDK.\n\n### Current status\nWhat works:\n* Golang types generation for all VK API data structures enlisted in [`objects.json`](https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/objects.json) schema; result code is located at [`objects`](https://github.com/Burmuley/go-vkapi/tree/master/objects) subdirectory\n* Golang types generation for all VK API responses enlisted in [`responses.json`](https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/responses.json) schema; result code is located at [`responses`](https://github.com/Burmuley/go-vkapi/tree/master/responses) subdirectory\n* Golang types generation for all VK API methods enlisted in [`metods.json`](https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/methods.json) schema; result code is located at [`repo root`](https://github.com/Burmuley/go-vkapi/tree/master)\n* Include of static code (common interfaces and VK API interaction utils)\n* Golang code formatting for generated code\n* Documentation (i.e. description) is taken from JSON schema files, i.e. no documentation in JSON schema - no documentation in produced code\n\nWhat TODO:\n* Create output directory structure on the fly\n* Add tests for the generator code\n* Add code to generate tests for resulting SDK code\n\n### Settings\n\nThe tool by default use these inputs:\n* `objects` - [https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/objects.json](https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/objects.json) \n* `responses` - [https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/responses.json](https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/responses.json)\n* `methods` - [https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/methods.json](https://raw.githubusercontent.com/VKCOM/vk-api-schema/master/methods.json)\n\nDefault output directory is `output` located in the repository root. \n\nThese settings can be overridden by setting corresponding environment variables:\n* to override `objects` - set `VK_API_SCHEMA_OBJECTS` environment variable  \n* to override `responses` - set `VK_API_SCHEMA_RESPONSES` environment variable\n* to override `methods` - set `VK_API_SCHEMA_METHODS`  environment variable\n* to override `output` directory location - set `VK_API_SCHEMA_OUTPUT` environment variable\n\nVariables values can be of two types:\n1. HTTP URL to the target file (doesn't support any kind of authentication)\n1. Local file path (format depends on OS, tested with unix-like ones)\n\n### Automated builds\n\nThere is a CI/CD job triggered on each commit to `master` branch, which builds the tool and then commits to a remote repository, creating a merge request.\n\n### Manual tool usage\n\nTool does not require any command line parameters.\n\n```bash\n$ go build -o go-vkapi-gen\n$ ./go-vkapi-gen\n```\n\n### License\nAll the code (in this repository and produced by the tool) is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) license. ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fburmuley%2Fgo-vkapi-gen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fburmuley%2Fgo-vkapi-gen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fburmuley%2Fgo-vkapi-gen/lists"}