{"id":29150490,"url":"https://github.com/0xthomasit/food_delivery","last_synced_at":"2026-04-08T16:02:05.590Z","repository":{"id":247341755,"uuid":"551889814","full_name":"0xthomasit/food_delivery","owner":"0xthomasit","description":"An individual and practical micro-services built with Golang and Gin framework. It was constructed best practices and common design patterns such as DDD, Clean architecture and latest technologies.","archived":false,"fork":false,"pushed_at":"2025-03-30T17:21:54.000Z","size":266,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-28T08:22:01.227Z","etag":null,"topics":["clean-architecture","ddd","docker","gin","golang","gorm","grpc","mysql","nats","socket-io","tracing"],"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/0xthomasit.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-10-15T10:20:02.000Z","updated_at":"2025-03-30T18:06:14.000Z","dependencies_parsed_at":"2024-09-07T06:23:54.177Z","dependency_job_id":"41f39fde-52c6-4229-a135-f728c79c2cf9","html_url":"https://github.com/0xthomasit/food_delivery","commit_stats":null,"previous_names":["0xthomas3000/food_delivery","haohmaru3000/food_delivery","0xtuanit/food_delivery","0xthomasit/food_delivery"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/0xthomasit/food_delivery","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xthomasit%2Ffood_delivery","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xthomasit%2Ffood_delivery/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xthomasit%2Ffood_delivery/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xthomasit%2Ffood_delivery/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xthomasit","download_url":"https://codeload.github.com/0xthomasit/food_delivery/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xthomasit%2Ffood_delivery/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31562697,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["clean-architecture","ddd","docker","gin","golang","gorm","grpc","mysql","nats","socket-io","tracing"],"created_at":"2025-06-30T23:10:44.396Z","updated_at":"2026-04-08T16:02:05.562Z","avatar_url":"https://github.com/0xthomasit.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eFood Delivery\u003c/h1\u003e\n\n## Prerequisites\n- Go \u003e= 1.19.2\n- Docker\n\n## Commands\n### `Build`\n```bash\n# build cross platform\n$ CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app\n```\n\n### `Docker`\n\n```bash\n# Setup Database\n$ docker run -d --name mysql --privileged=true \\\n    -e MYSQL_ROOT_PASSWORD=\"admin\" \\\n    -e MYSQL_USER=\"food_delivery\" \\\n    -e MYSQL_PASSWORD=\"12345678\" \\\n    -e MYSQL_DATABASE=\"food_delivery\" \\\n    -p 3307:3306 mysql:latest\n\n# docker build\n$ docker build -t food_delivery\n\n# create a network\n$ docker network create food_delivery_network\n\n# docker network connect\n$ docker network connect food_delivery_network mysql\n\n# run \n$ docker run -d --name food_delivery \\ \n    -e DBConnectionStr=\"food_delivery:12345678@tcp(mysql:3307)/food_delivery?charset=utf8mb4\u0026parseTime=True\u0026loc=Local\" \\ \n    --network=food_delivery_network \\ \n    -p 3001:8080 \\\n    food_delivery_app\n```\n\n### `Reverse Proxy with Nginx`\n\n```bash\n$ docker run -d -p 80:80 -p 443:443 \\\n    --network=food_delivery_network --name nginx-proxy \\\n    -e ENABLE_IPV6=true \\\n    --privileged=true \\\n    -v ~/nginx/vhost.d:/etc/nginx/vhost.d \\\n    -v ~/nginx-certs:/etc/nginx/certs:ro \\\n    -v ~/nginx-conf:/etc/nginx/conf.d \\\n    -v ~/nginx-logs:/var/log/nginx \\\n    -v /usr/share/nginx/html \\\n    -v /var/run/docker.sock:/tmp/docker.socker:ro \\\n    --label nginx_proxy jwilder/nginx-proxy\n    \n$ docker run -d --network=food_delivery_network \\\n    -v ~/nginx/vhost.d:/etc/nginx/vhost.d \\\n    -v ~/nginx-certs:/etc/nginx/certs:rw \\\n    -v /var/run/docker.sock:/tmp/docker.socker:ro \\\n    --volumes-from nginx-proxy \\\n    --privileged=true \\\n    jrcs/letsencrypt-nginx-proxy-companion\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xthomasit%2Ffood_delivery","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xthomasit%2Ffood_delivery","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xthomasit%2Ffood_delivery/lists"}