{"id":20629883,"url":"https://github.com/lbrulet/apinit-go","last_synced_at":"2026-04-11T14:05:14.518Z","repository":{"id":128440195,"uuid":"196975356","full_name":"lbrulet/APINIT-GO","owner":"lbrulet","description":"[apiREST] Setup | Golang - mysql - Mail sender - AUTH0 - JWT with Docker and Nginx ","archived":false,"fork":false,"pushed_at":"2019-11-09T02:43:20.000Z","size":1828,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-05T04:03:57.086Z","etag":null,"topics":["api","authentification","docker","docker-compose","go","golang","jwt","mail-sender","mysql","nginx","restful-api","smtp"],"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/lbrulet.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-07-15T10:15:34.000Z","updated_at":"2020-12-12T04:20:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"663d7778-4ca0-4dc7-abce-7e6dc5a614e4","html_url":"https://github.com/lbrulet/APINIT-GO","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lbrulet/APINIT-GO","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lbrulet%2FAPINIT-GO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lbrulet%2FAPINIT-GO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lbrulet%2FAPINIT-GO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lbrulet%2FAPINIT-GO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lbrulet","download_url":"https://codeload.github.com/lbrulet/APINIT-GO/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lbrulet%2FAPINIT-GO/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267867805,"owners_count":24157356,"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-07-30T02:00:09.044Z","response_time":70,"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":["api","authentification","docker","docker-compose","go","golang","jwt","mail-sender","mysql","nginx","restful-api","smtp"],"created_at":"2024-11-16T14:06:20.088Z","updated_at":"2025-12-30T21:55:35.313Z","avatar_url":"https://github.com/lbrulet.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Go Report Card](https://goreportcard.com/badge/github.com/lbrulet/APINIT-GO)](https://goreportcard.com/report/github.com/lbrulet/APINIT-GO)\n  \n# APINIT-GO\n\nAPINIT-GO is a setup of an apiREST using Golang with a mysql database and Docker exposed with NGINX with an authentification service using JWT.\n\n## Installation\n\nUse [curl](https://curl.haxx.se/) to install [Docker Compose](https://docs.docker.com/compose/install/#install-compose).\n\n```bash\nsudo curl -L \"https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)\" -o /usr/local/bin/docker-compose\n```\nThen apply executable permissions to the binary:\n\n```bash\nsudo chmod +x /usr/local/bin/docker-compose\n```\n\n## Usage\n\nThe start and stop script will required your root password to shutdown your local mysql that use the port 3306.\n\nTo start the app\n```bash\ncd docker \u0026\u0026 ./build \u0026\u0026 ./start\n```\n\nTo stop the app\n```bash\ncd docker \u0026\u0026 ./stop\n```\n\n## CHOOSE YOUR ENVIRONNMENT !\n\nUse this export to connect the api to your local mongo.\n```bash\nexport ENVIRONMENT=LOCAL\n```\n\nOtherwise you can just used the docker compose.\n\n## MAIL SENDER\n\nDon't forget to write your smtp detail into the /configs/local/config.json or /configs/dev/config.json\nAnd please export your mail account with password like below :\n\n```bash\nexport MAIL_ADDRESS=luc.brulet@gmail.com\nexport MAIL_PASSWORD=azertyuiop\n```\n\nNOTE: The default config is the google's smtp address\n\n## DOCUMENTATIONS\n\nDownload those two files and import them into your postman.\n\n[Postman collection](https://github.com/lbrulet/APINIT-GO/blob/master/docs/APINIT-GO.postman_collection.json)\n\n[Postman environment](https://github.com/lbrulet/APINIT-GO/blob/master/docs/APINIT-GO.postman_environment.json)\n\n## AUTHENTIFICATION\n\n* __POST__: 127.0.0.1:8080/api/auth/login\n\n```json\n{\n    \"username\": \"sankamille\",\n    \"password\": \"password123\"\n}\n```\n\n* __POST__: 127.0.0.1:8080/api/auth/register\n\n```json\n{\n    \"username\": \"sankamille\",\n    \"email\": \"luc.brulet@epitech.eu\",\n    \"password\": \"password123\"\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flbrulet%2Fapinit-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flbrulet%2Fapinit-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flbrulet%2Fapinit-go/lists"}