{"id":23820167,"url":"https://github.com/kaykes8/food-api","last_synced_at":"2026-06-19T18:32:29.054Z","repository":{"id":270618787,"uuid":"910907312","full_name":"KaykeS8/Food-api","owner":"KaykeS8","description":"Uma API simples e funcional para restaurantes, permitindo gerenciar categorias, produtos, pedidos e mais. 🚀 Desenvolvida com Ruby on Rails, oferece endpoints bem definidos e é fácil de configurar. Teste localmente e contribua para aprimorar!","archived":false,"fork":false,"pushed_at":"2025-01-01T20:51:03.000Z","size":5890,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-11T15:30:31.183Z","etag":null,"topics":["ruby","ruby-on-rails","sqlite3"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/KaykeS8.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,"zenodo":null}},"created_at":"2025-01-01T18:47:07.000Z","updated_at":"2025-01-01T20:53:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"37e9559e-6ffc-478c-a1ee-9ac0176211b4","html_url":"https://github.com/KaykeS8/Food-api","commit_stats":null,"previous_names":["kaykes8/food-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/KaykeS8/Food-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KaykeS8%2FFood-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KaykeS8%2FFood-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KaykeS8%2FFood-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KaykeS8%2FFood-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KaykeS8","download_url":"https://codeload.github.com/KaykeS8/Food-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KaykeS8%2FFood-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34544403,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"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":["ruby","ruby-on-rails","sqlite3"],"created_at":"2025-01-02T07:28:28.759Z","updated_at":"2026-06-19T18:32:29.048Z","avatar_url":"https://github.com/KaykeS8.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\" style=\"font-weight: bold;\"\u003eFood API 🍔\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n \u003ca href=\"#tech\"\u003eTechnologies\u003c/a\u003e • \n \u003ca href=\"#started\"\u003eGetting Started\u003c/a\u003e • \n  \u003ca href=\"#routes\"\u003eAPI Endpoints\u003c/a\u003e •\n \u003ca href=\"#colab\"\u003eCollaborators\u003c/a\u003e •\n \u003ca href=\"#contribute\"\u003eContribute\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cb\u003eSimple API for be used by restaurants\u003c/b\u003e\n\u003c/p\u003e\n\n\u003ch2 id=\"technologies\"\u003e💻 Technologies\u003c/h2\u003e\n\n- All technologies used in project\n- Ruby - 3.1.4\n- Ruby On Rails - 6.1.3\n- Sqlite3 - 1.4\n\n\u003ch2 id=\"started\"\u003e🚀 Getting started\u003c/h2\u003e\n\nIf you want to test this project in your machine, feel free.\n\n### Prerequisites\n\n- Ruby - 3.1.4\n- Ruby On Rails - 6.1.3\n- Node.js\n\n\u003ch3\u003eCloning\u003c/h3\u003e\n\nIf you want to clone this project, follow below.\n\n```bash\ngit clone https://github.com/KaykeS8/Food-api.git\n```\n\n\u003ch3\u003eStarting\u003c/h3\u003e\n\nFor init the project\n\n```bash\ncd Food-api\nbundle install\nrails s\n```\n\n\u003ch2 id=\"routes\"\u003e📍 API Endpoints\u003c/h2\u003e\n\n| route                                    | description                                                    |\n| ---------------------------------------- | -------------------------------------------------------------- |\n| `\u003ckbd\u003e`GET /api/categories `\u003c/kbd\u003e` | retrieves categories info see[response details](#get-auth-detail) |\n\n\u003ch3 id=\"get-auth-detail\"\u003eGET /api/categories\u003c/h3\u003e\n\n**RESPONSE**\n\n```json\n[\n    {\n        \"id\": 1,\n        \"title\": \"italiana\",\n        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBDZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--069129f0cdae751b6dcbdf3d7382707b400a0fdc/italian.jpeg\"\n    }\n]\n```\n\n| route                                       | description                                                     |\n| ------------------------------------------- | --------------------------------------------------------------- |\n| `\u003ckbd\u003e`GET /api/restaurants `\u003c/kbd\u003e`   | retrieves restaurants info see[response details](#get-auth-detail) |\n| `\u003ckbd\u003e`GET /api/restaurants/2 `\u003c/kbd\u003e` | retrieves restaurants info see[response details]                |\n\n\u003ch3 id=\"post-auth-detail\"\u003eGET /api/restaurants\u003c/h3\u003e\n\n**REQUEST**\n\n```json\n[\n    {\n        \"id\": 5,\n        \"name\": \"Sushi Eterno\",\n        \"description\": \"Existimos para garantir que cada hóspede receba um serviço rápido, profissional, amigável e cortês.\",\n        \"delivery_tax\": 7.5,\n        \"city\": \"São Paulo\",\n        \"street\": \"Avenida Manoel Domingos Pinto\",\n        \"neighborhood\": \"Parque Anhangüera\",\n        \"number\": \"507\",\n        \"complement\": null,\n        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHQT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--699badac804f78c2a8a017ace0479de1dd0c9ef8/5.jpg\",\n        \"product_categories\": [\n            {\n                \"id\": 6,\n                \"title\": \"Entrada\",\n                \"products\": [\n                    {\n                        \"id\": 8,\n                        \"name\": \"Temaki\",\n                        \"description\": \"Enrolado de arroz com alga marinha em forma de cone\",\n                        \"price\": 19.99,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--4cde42e8302ddd5381d7eb9f719a9278b1ac09bb/temaki.jpeg\"\n                    },\n                    {\n                        \"id\": 9,\n                        \"name\": \"Sashimi\",\n                        \"description\": \"Peixe cru fatiado, salmao, atum e peixe prego\",\n                        \"price\": 30.9,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--9fbac087e7bb09e65d146883faa4cf66a704620a/sashimi.jpg\"\n                    }\n                ]\n            }\n        ]\n    },\n    {\n        \"id\": 6,\n        \"name\": \"Okuyamah\",\n        \"description\": \"Restaurante conceituado, vencedor por 5 vezes como melhor restaurante Japones de São Paulo.\",\n        \"delivery_tax\": 8.3,\n        \"city\": \"São Paulo\",\n        \"street\": \"Rua Francisco Artassio\",\n        \"neighborhood\": \"Jardim das Laranjeiras\",\n        \"number\": \"134\",\n        \"complement\": null,\n        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHdz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--7e497647d89a0aec5078020d59aa2678d91b2a5d/6.jpg\",\n        \"product_categories\": [\n            {\n                \"id\": 7,\n                \"title\": \"Entrada\",\n                \"products\": [\n                    {\n                        \"id\": 10,\n                        \"name\": \"Hossomaki 16 unidades\",\n                        \"description\": \"Enrolado fino com folha de alga marinha por fora.\",\n                        \"price\": 20.9,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBIQT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--991a8ae82cc7e30085135a07c702022765dd984e/hosomaki.jpg\"\n                    },\n                    {\n                        \"id\": 11,\n                        \"name\": \"Hot roll - 10 unidades\",\n                        \"description\": \"10 unidades.\",\n                        \"price\": 12.0,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBIUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--d93c5895bb0851ffd2e376bfb4ba3d8435e812f2/hot-holl.jpg\"\n                    }\n                ]\n            }\n        ]\n    }\n]\n```\n\n\u003ch3 id=\"post-auth-detail\"\u003eGET /api/restaurants?city=São Paulo\u003c/h3\u003e\n\nFilter restaurants by city\n\n**REQUEST**\n\n```json\n[\n    {\n        \"id\": 1,\n        \"name\": \"Los Sombreros\",\n        \"description\": \"Nossa missão tem sido ajudar as pessoas a alcançar seus objetivos de saúde e bem-estar. Embora tenhamos mudado ao longo dos anos, nossos valores permaneceram os mesmos.\",\n        \"delivery_tax\": 5.5,\n        \"city\": \"São Paulo\",\n        \"street\": \"Melo Barreto\",\n        \"neighborhood\": \"Brás\",\n        \"number\": \"1393\",\n        \"complement\": null,\n        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBEUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--8c1d734703f7a4a89ab66c367ae97cf89a2ef7e6/1.jpg\",\n        \"product_categories\": [\n            {\n                \"id\": 1,\n                \"title\": \"Pratos Mexicanos\",\n                \"products\": [\n                    {\n                        \"id\": 1,\n                        \"name\": \"Nacho Guacamole\",\n                        \"description\": \"Tortilhas com Guacamole\",\n                        \"price\": 19.0,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBEZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--5fc04091ff55cafdd4f754b35887fd36941f77f9/nachosg.jpg\"\n                    },\n                    {\n                        \"id\": 2,\n                        \"name\": \"Nacho\",\n                        \"description\": \"Tortilhas com milho\",\n                        \"price\": 19.0,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBFQT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--c4d35350e59ea73cbe98a91122f03a088c130045/bt.jpg\"\n                    },\n                    {\n                        \"id\": 3,\n                        \"name\": \"Quesadilha\",\n                        \"description\": \"Tortilhas de queijo\",\n                        \"price\": 25.0,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBFUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--bf5628976cab8df896202521466b95e80b1c6872/quesa.jpeg\"\n                    }\n                ]\n            }\n        ]\n    }\n]\n```\n\n\u003ch3 id=\"post-auth-detail\"\u003eGET /api/restaurants?category=japonesa\u003c/h3\u003e\n\nFilter restaurants by category\n\n**REQUEST**\n\n```json\n[\n    {\n        \"id\": 5,\n        \"name\": \"Sushi Eterno\",\n        \"description\": \"Existimos para garantir que cada hóspede receba um serviço rápido, profissional, amigável e cortês.\",\n        \"delivery_tax\": 7.5,\n        \"city\": \"São Paulo\",\n        \"street\": \"Avenida Manoel Domingos Pinto\",\n        \"neighborhood\": \"Parque Anhangüera\",\n        \"number\": \"507\",\n        \"complement\": null,\n        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHQT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--699badac804f78c2a8a017ace0479de1dd0c9ef8/5.jpg\",\n        \"product_categories\": [\n            {\n                \"id\": 6,\n                \"title\": \"Entrada\",\n                \"products\": [\n                    {\n                        \"id\": 8,\n                        \"name\": \"Temaki\",\n                        \"description\": \"Enrolado de arroz com alga marinha em forma de cone\",\n                        \"price\": 19.99,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHUT09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--4cde42e8302ddd5381d7eb9f719a9278b1ac09bb/temaki.jpeg\"\n                    },\n                    {\n                        \"id\": 9,\n                        \"name\": \"Sashimi\",\n                        \"description\": \"Peixe cru fatiado, salmao, atum e peixe prego\",\n                        \"price\": 30.9,\n                        \"image_url\": \"http://localhost:3000/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBHZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--9fbac087e7bb09e65d146883faa4cf66a704620a/sashimi.jpg\"\n                    }\n                ]\n            }\n        ]\n    }\n]\n```\n\n\u003ch3 id=\"post-auth-detail\"\u003eGET /api/restaurants/2\u003c/h3\u003e\n\nFind restaurant by id\n\n**REQUEST**\n\n```json\n{\n    \"id\": 2,\n    \"name\": \"Ola Que Tal\",\n    \"description\": \"Para alcançar e manter essa distinção em comida e vinho, serviço, ambiente e ambiente, o restaurante ganha reputação de primeira classe por gastronomia, hospitalidade graciosa e informada, conforto e beleza que atraem clientes novos e repetidos ano após ano.\",\n    \"delivery_tax\": 5.5,\n    \"city\": \"São Paulo\",\n    \"street\": \"Viela Eugênio Monteiro Junior\",\n    \"neighborhood\": \"Paraíso\",\n    \"number\": \"659\",\n    \"complement\": null,\n    \"product_categories\": [\n        {\n            \"id\": 2,\n            \"title\": \"Pratos Mexicanos\",\n            \"products\": []\n        },\n        {\n            \"id\": 3,\n            \"title\": \"Pratos Mexicanos\",\n            \"products\": []\n        }\n    ]\n}\n```\n\n| route                                          | description                                                |\n| ---------------------------------------------- | ---------------------------------------------------------- |\n| `\u003ckbd\u003e`GET /api/available_cities `\u003c/kbd\u003e` | retrieves cities info see[response details](#get-auth-detail) |\n\n\u003ch3 id=\"post-auth-detail\"\u003eGET /api/available_cities\u003c/h3\u003e\n\n**REQUEST**\n\n```json\n{\n    \"available_cities\": [\n        \"São Paulo\"\n    ]\n}\n```\n\n| route                                  | description                                           |\n| -------------------------------------- | ----------------------------------------------------- |\n| `\u003ckbd\u003e`POST /api/orders `\u003c/kbd\u003e` | For create order see[response details](#get-auth-detail) |\n| `\u003ckbd\u003e`GET /api/order/1 `\u003c/kbd\u003e`  | retrieves order info see[response details]            |\n\n\u003ch3 id=\"post-auth-detail\"\u003ePOST /api/orders\u003c/h3\u003e\n\n**BODY**\n\n```json\n{\n    \"order\": {\n        \"name\": \"Kayke Simao\",\n        \"phone_number\":  \"31923234545\",\n        \"restaurant_id\": 1,\n        \"city\": \"Belo horizonte\",\n        \"neighborhood\": \"Vila da Serra\",\n        \"street\": \"Olhares\",\n        \"number\": \"748\",\n        \"complement\": \"AP-12\",\n        \"order_products_attributes\": [\n            {\n                \"quantity\": 1,\n                \"product_id\": 1\n            }\n        ]\n    }\n}\n```\n\n**REQUEST**\n\n```json\n{\n    \"id\": 1,\n    \"restaurant_id\": 1,\n    \"total_value\": 24.5,\n    \"status\": \"waiting\",\n    \"city\": \"Belo horizonte\",\n    \"street\": \"Olhares\",\n    \"neighborhood\": \"Vila da Serra\",\n    \"number\": \"748\",\n    \"complement\": \"AP-12\"\n}\n```\n\n\u003ch3 id=\"post-auth-detail\"\u003eGET /api/orders/1\u003c/h3\u003e\n\n**REQUEST**\n\n```json\n{\n    \"id\": 1,\n    \"restaurant_id\": 1,\n    \"total_value\": 24.5,\n    \"status\": \"waiting\",\n    \"city\": \"Belo horizonte\",\n    \"street\": \"Olhares\",\n    \"neighborhood\": \"Vila da Serra\",\n    \"number\": \"748\",\n    \"complement\": \"AP-12\"\n}\n```\n\n\u003ch2 id=\"colab\"\u003e🤝 Collaborators\u003c/h2\u003e\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ca href=\"#\"\u003e\n        \u003cimg src=\"https://avatars.githubusercontent.com/u/89744379?v=4\" width=\"100px;\" alt=\"kayke simao Profile Picture\"/\u003e\u003cbr\u003e\n        \u003csub\u003e\n          \u003cb\u003eKayke Simão\u003c/b\u003e\n        \u003c/sub\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaykes8%2Ffood-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkaykes8%2Ffood-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaykes8%2Ffood-api/lists"}