{"id":30930340,"url":"https://github.com/makenew/gomodule","last_synced_at":"2025-10-09T03:14:00.040Z","repository":{"id":59046231,"uuid":"531367262","full_name":"makenew/gomodule","owner":"makenew","description":"Bootstrap a new Go module in less than a minute. ","archived":false,"fork":false,"pushed_at":"2024-10-23T01:23:27.000Z","size":74,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-10T12:29:41.411Z","etag":null,"topics":["go","golang","gomodule"],"latest_commit_sha":null,"homepage":"https://github.com/makenew/gomodule/releases","language":"Shell","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/makenew.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-09-01T04:50:55.000Z","updated_at":"2024-10-23T01:23:04.000Z","dependencies_parsed_at":"2023-02-15T19:45:22.491Z","dependency_job_id":null,"html_url":"https://github.com/makenew/gomodule","commit_stats":null,"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/makenew/gomodule","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makenew%2Fgomodule","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makenew%2Fgomodule/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makenew%2Fgomodule/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makenew%2Fgomodule/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/makenew","download_url":"https://codeload.github.com/makenew/gomodule/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/makenew%2Fgomodule/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279000777,"owners_count":26082911,"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","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"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":["go","golang","gomodule"],"created_at":"2025-09-10T10:45:35.596Z","updated_at":"2025-10-09T03:14:00.025Z","avatar_url":"https://github.com/makenew.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go Module Project Skeleton\n\n[![GitHub Actions](https://github.com/makenew/gomodule/actions/workflows/check.yml/badge.svg)](https://github.com/makenew/gomodule/actions/workflows/check.yml)\n\nProject skeleton for a Go module.\n\n## Description\n\nBootstrap a new Go module in five minutes or less.\n\n### Features\n\n- Multi-arch and multi-platform builds published to GitHub with [GoReleaser].\n- Linting with [golangci-lint].\n- Continuous testing and deployment with [GitHub Actions].\n- [Keep a CHANGELOG].\n- Consistent coding with [EditorConfig].\n\n[EditorConfig]: https://editorconfig.org/\n[GitHub Actions]: https://github.com/features/actions\n[GitHub Container Registry]: https://github.com/features/packages\n[golangci-lint]: https://golangci-lint.run/\n[GoReleaser]: https://goreleaser.com/\n[Keep a CHANGELOG]: https://keepachangelog.com/\n\n### Bootstrapping a new project\n\n1. Create an empty (**non-initialized**) repository on GitHub.\n2. Clone the main branch of this repository with\n   ```\n   $ git clone --single-branch git@github.com:makenew/gomodule.git \u003cnew-go-module\u003e\n   $ cd \u003cnew-go-module\u003e\n   ```\n   Optionally, reset to the latest version with\n   ```\n   $ git reset --hard \u003cversion-tag\u003e\n   ```\n3. Run\n   ```\n   $ ./makenew.sh\n   ```\n   This will replace the boilerplate, delete itself,\n   remove the git remote, remove upstream tags,\n   and stage changes for commit.\n4. Create the required GitHub repository secrets.\n5. Review, commit, and push the changes to GitHub with\n   ```\n   $ git diff --cached\n   $ git commit -m \"Replace makenew boilerplate\"\n    git remote add origin git@github.com:\u003cuser\u003e/\u003cnew-go-module\u003e.git\n   $ git push -u origin main\n   ```\n6. Ensure the GitHub action passes,\n   then release the initial version with\n   ```\n   $ git tag --sign v0.0.1\n   $ git push --tags\n   ```\n\n### Updating from this skeleton\n\nIf you want to pull in future updates from this skeleton,\nyou can fetch and merge in changes from this repository.\n\nAdd this as a new remote with\n\n```\n$ git remote add upstream git@github.com:makenew/gomodule.git\n```\n\nYou can then fetch and merge changes with\n\n```\n$ git fetch --no-tags upstream\n$ git merge upstream/main\n```\n\n#### Changelog for this skeleton\n\nNote that `CHANGELOG.md` is just a template for this skeleton.\nThe actual changes for this project are documented in the commit history\nand summarized under [Releases].\n\n[Releases]: https://github.com/makenew/gomodule/releases\n\n## Installation\n\nSimply import this module into your project\n\n```go\nimport \"github.com/makenew/gomodule\"\n```\n\nThen run\n\n```\n$ go mod tidy\n```\n\n## Development and Testing\n\n### Quickstart\n\n```\n$ git clone https://github.com/makenew/gomodule.git\n$ cd gomodule\n$ make\n$ make test\n```\n\n### Source code\n\nThe [source code] is hosted on GitHub.\nClone the project with\n\n```\n$ git clone git@github.com:makenew/gomodule.git\n```\n\n[source code]: https://github.com/makenew/gomodule\n\n### Requirements\n\nA [Go] version compatible with the one specified in `go.mod`,\n[GoReleaser], and [golangci-lint].\n\n[Go]: https://golang.org/\n[golangci-lint]: https://golangci-lint.run/\n[GoReleaser]: https://goreleaser.com/\n\n## GitHub Actions\n\n_GitHub Actions should already be configured: this section is for reference only._\n\nThe following repository secrets must be set on [GitHub Actions]:\n\n- `GH_TOKEN`: A personal access token that can trigger workflows.\n- `GIT_USER_NAME`: The GitHub user's real name.\n- `GIT_USER_EMAIL`: The GitHub user's email.\n- `GPG_PRIVATE_KEY`: The GitHub user's [GPG private key].\n- `GPG_PASSPHRASE`: The GitHub user's GPG passphrase.\n\nThese must be set manually.\n\n[GitHub Actions]: https://github.com/features/actions\n[GPG private key]: https://github.com/marketplace/actions/import-gpg#prerequisites\n\n## Contributing\n\nPlease submit and comment on bug reports and feature requests.\n\nTo submit a patch:\n\n1. Fork it (https://github.com/makenew/gomodule/fork).\n2. Create your feature branch (`git checkout -b my-new-feature`).\n3. Make changes.\n4. Commit your changes (`git commit -am 'Add some feature'`).\n5. Push to the branch (`git push origin my-new-feature`).\n6. Create a new Pull Request.\n\n## License\n\nThis Go module plugin is licensed under the MIT license.\n\n## Warranty\n\nThis software is provided by the copyright holders and contributors \"as is\" and\nany express or implied warranties, including, but not limited to, the implied\nwarranties of merchantability and fitness for a particular purpose are\ndisclaimed. In no event shall the copyright holder or contributors be liable for\nany direct, indirect, incidental, special, exemplary, or consequential damages\n(including, but not limited to, procurement of substitute goods or services;\nloss of use, data, or profits; or business interruption) however caused and on\nany theory of liability, whether in contract, strict liability, or tort\n(including negligence or otherwise) arising in any way out of the use of this\nsoftware, even if advised of the possibility of such damage.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmakenew%2Fgomodule","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmakenew%2Fgomodule","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmakenew%2Fgomodule/lists"}