{"id":22505832,"url":"https://github.com/efimovalex/go-template","last_synced_at":"2026-04-13T22:33:33.743Z","repository":{"id":45684824,"uuid":"495162530","full_name":"efimovalex/go-template","owner":"efimovalex","description":"Boilerplate template for a golang microservice","archived":false,"fork":false,"pushed_at":"2022-08-28T14:46:04.000Z","size":14487,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-27T23:30:35.431Z","etag":null,"topics":["boilerplate","boilerplate-template","docker","docker-compose","golang","rest-api","swagger","template-project"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/efimovalex.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-05-22T19:52:29.000Z","updated_at":"2022-09-14T07:49:47.000Z","dependencies_parsed_at":"2022-08-21T12:10:23.023Z","dependency_job_id":null,"html_url":"https://github.com/efimovalex/go-template","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/efimovalex/go-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efimovalex%2Fgo-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efimovalex%2Fgo-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efimovalex%2Fgo-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efimovalex%2Fgo-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/efimovalex","download_url":"https://codeload.github.com/efimovalex/go-template/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efimovalex%2Fgo-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31774028,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T20:17:16.280Z","status":"ssl_error","status_checked_at":"2026-04-13T20:17:08.216Z","response_time":93,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["boilerplate","boilerplate-template","docker","docker-compose","golang","rest-api","swagger","template-project"],"created_at":"2024-12-07T00:34:56.662Z","updated_at":"2026-04-13T22:33:33.725Z","avatar_url":"https://github.com/efimovalex.png","language":"Go","readme":"[![CI-pipeline](https://github.com/efimovalex/go-template/actions/workflows/ci.yml/badge.svg)](https://github.com/efimovalex/go-template/actions/workflows/ci.yml)\n# Go Project Template \nA flexible template that allows the quick starting of one or more new golang APIs, processing units or microservices.\n\nCurrently it is wired to start a single service \n## Introduction\nFind and replace `replaceme` string in all project with your new project name for fast development start.\n\nFile structure: \n\n- ./ -\u003e where the main file lives + configuration files + docker files\n- adapters -\u003e adapters for external services \u0026 tools\n- config -\u003e package which has the role of loading the starting config\n- docs -\u003e swagger generated files\n- internal -\u003e clearly defined internal packages \n- schema -\u003e migrations for the used databases\n- services -\u003e the servers and it's dependent services. one cmd main file starts one of the services\n\n## Services \n\n### Rest API\nCan be accessed at http://localhost:8080/. Check the API documentation below for endpoints.\n### Healthcheck\nCan be accessed on http://localhost:8081/healthcheck\n### API documentation \nCan be viewed on http://localhost:8085/swagger/index.html after being generated by running `make docs`\n\n\n### Dependencies\n\nThe development setup depends on the following tools:\n\n- go\n- docker\n- docker-compose\n- golangci-lint\n- swaggo\n\nTo install all go dependencies run `make deps`\n\n### Operations\n\nMake provides a interface to common development operations\n\n```\n$ make\n\nUsage:\n  make \u003ctarget\u003e\n\nTargets:\n  help        This help.\n  test-ci     Runs the tests with coverage checks + lint\n  test        Runs all tests normally\n  lint        Runs the linter\n  build       Builds go binary\n  run         Runs main package\n  docs        Generate swagger documentation json/yaml\n  up          Starts docker containers for dependent services\n  stop        Stops docker containers for dependent services\n  down        Removes docker containers for dependent services\n  deps        Fetches go dependencies\n  clean       Removes all docker containers and volumes\n  migration   Creates a new migration\n  migrate     Runs migrations locally\n  revert      Reverts migrations locally\n  ```","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fefimovalex%2Fgo-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fefimovalex%2Fgo-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fefimovalex%2Fgo-template/lists"}