{"id":19143809,"url":"https://github.com/ashwin-rajeev/pizza-app","last_synced_at":"2026-06-11T04:30:19.607Z","repository":{"id":141448633,"uuid":"418170383","full_name":"Ashwin-Rajeev/pizza-app","owner":"Ashwin-Rajeev","description":null,"archived":false,"fork":false,"pushed_at":"2022-12-17T14:09:59.000Z","size":122,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-03T15:45:45.573Z","etag":null,"topics":["api-rest","golang","pizza-delivery","pizza-order"],"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/Ashwin-Rajeev.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":"2021-10-17T15:15:19.000Z","updated_at":"2021-10-17T15:20:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"6ef37a6c-59f2-4aa6-9af3-c819f13d74ab","html_url":"https://github.com/Ashwin-Rajeev/pizza-app","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashwin-Rajeev%2Fpizza-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashwin-Rajeev%2Fpizza-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashwin-Rajeev%2Fpizza-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ashwin-Rajeev%2Fpizza-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ashwin-Rajeev","download_url":"https://codeload.github.com/Ashwin-Rajeev/pizza-app/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240224795,"owners_count":19767808,"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":["api-rest","golang","pizza-delivery","pizza-order"],"created_at":"2024-11-09T07:32:54.031Z","updated_at":"2026-06-11T04:30:19.570Z","avatar_url":"https://github.com/Ashwin-Rajeev.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pizza-ordering-app\n\nCongrats, you are the proud owner of a pizza business. Your business has a very simple\nworkflow:\n- You serve only 2 kinds of pizza (Veggie Lovers and Meat Lovers). You serve only one\nsize of pizza.\n- After you receive an order, you “make” the pizza and then you notify customers that their\npizza is ready for pick up. Customers can be notified either through their email or text\nmessage.\n\n## Project Structure\n```\n.\n├── Dockerfile\n├── LICENSE\n├── README.md\n├── docker-compose.yml\n├── go.mod\n├── go.sum\n├── internal\n│   ├── api\n│   │   ├── api_helper.go\n│   │   ├── api_oder_pizza.go\n│   │   ├── api_oder_pizza_test.go\n│   │   ├── api_status.go\n│   │   ├── model.go\n│   │   ├── router.go\n│   │   └── server.go\n│   ├── cmd\n│   │   ├── api.go\n│   │   ├── cfg_helper.go\n│   │   └── root.go\n│   ├── data\n│   │   ├── dal_helper.go\n│   │   ├── dal_order_pizza.go\n│   │   ├── dal_order_pizza_test.go\n│   │   ├── migration\n│   │   │   └── initial_migration.sql\n│   │   ├── mock_db.go\n│   │   ├── models.go\n│   │   └── repo.go\n│   └── sms\n│       └── sms.go\n├── main.go\n├── makefile\n└── wait-for-it.sh\n```\n\n## Dependencies\n\u003e Docker\n\n## Steps to Execute \n\n#### 1. goto app root directory \n```bash\ncd pizza-app\n```\n#### 2. start the application\n```bash\nmake up\n```\n\n\n### API for status checking [GET]\n\n\u003e http://localhost:3000/api/status\n```bash\nSample response body\n{\n    \"status\": \"ok\",\n    \"result\": \"postgres db is working perfectly\"\n}\n```\n### Add a new order [POST]\n\n\u003e http://localhost:3000/api/buy_pizza\n\nSample request body\n```bash\n\n{\n    \"user_id\": 1,\n    \"pizza_id\": 2,\n    \"pizza_size\": \"medium\"\n}\n```\nSample response body\n```bash\n\n{\n    \"status\": \"ok\",\n    \"result\": {\n        \"pizza_id\": 2,\n        \"pizza_size\": \"medium\",\n        \"cooking_stage\": \"start\",\n        \"user_id\": 1,\n        \"start_time\": \"2021-10-17T12:32:51.680207885Z\",\n        \"is_active\": true\n    }\n}\n```\n\n### Update an order [PUT]\n\n\u003e http://localhost:3000/api/order\n\nSample request body\n```bash\n\n{\n    \"id\": 1,\n    \"cooking_stage\": \"done\"\n}\n```\nSample response body\n```bash\n\n{\n    \"status\": \"ok\",\n    \"result\": null\n}\n```\n\n### View order status [GET]\n\n\u003e http://localhost:3000/api/order-status/{user_id}\n\nSample response body\n```bash\n\n{\n    \"status\": \"ok\",\n    \"result\": {\n        \"pizza_id\": 2,\n        \"pizza_size\": \"medium\",\n        \"cooking_stage\": \"start\",\n        \"user_id\": 1,\n        \"start_time\": \"2021-10-17T12:32:51.680207885Z\",\n        \"is_active\": true\n    }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashwin-rajeev%2Fpizza-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashwin-rajeev%2Fpizza-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashwin-rajeev%2Fpizza-app/lists"}