{"id":51582928,"url":"https://github.com/lucsantosdev/app-food-recipes","last_synced_at":"2026-07-11T07:32:50.058Z","repository":{"id":360479954,"uuid":"1192084774","full_name":"lucsantosdev/app-food-recipes","owner":"lucsantosdev","description":"A modern Angular app to discover recipes quickly.","archived":false,"fork":false,"pushed_at":"2026-05-26T16:05:05.000Z","size":906,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-26T16:35:04.937Z","etag":null,"topics":["angular","api","app","bootstrap","food-recipes","typescript"],"latest_commit_sha":null,"homepage":"https://app-food-recipes.vercel.app","language":"TypeScript","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/lucsantosdev.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-25T21:58:27.000Z","updated_at":"2026-05-26T16:05:15.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/lucsantosdev/app-food-recipes","commit_stats":null,"previous_names":["lucsantosdev/app-food-recipes"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/lucsantosdev/app-food-recipes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucsantosdev%2Fapp-food-recipes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucsantosdev%2Fapp-food-recipes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucsantosdev%2Fapp-food-recipes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucsantosdev%2Fapp-food-recipes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lucsantosdev","download_url":"https://codeload.github.com/lucsantosdev/app-food-recipes/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lucsantosdev%2Fapp-food-recipes/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35355110,"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-07-11T02:00:05.354Z","response_time":104,"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":["angular","api","app","bootstrap","food-recipes","typescript"],"created_at":"2026-07-11T07:32:49.964Z","updated_at":"2026-07-11T07:32:50.052Z","avatar_url":"https://github.com/lucsantosdev.png","language":"TypeScript","funding_links":["https://ko-fi.com/lucsantosdev"],"categories":[],"sub_categories":[],"readme":"# Food Recipes App 🍽️\n\n\u003eA modern Angular app to discover recipes quickly, search by term, and open detailed views with key meal information.\n\n![App Preview](public/preview-app.png)\n\n## What This App Does ✨\n\n- Shows random recipe suggestions on the Home page.\n- Lets users load more ideas in batches.\n- Supports search by recipe name or ingredient keyword.\n- Opens a complete recipe details page.\n- Displays similar recipes to keep discovery going.\n\n## Main Pages 🧭\n\n- Home (/): random recipes with Load more behavior.\n- Search (/search): query-based recipe search.\n- About (/about): app overview and creator links.\n- Recipe details (/recipe?id=123): full recipe information by id.\n\n## Tech Stack 🧱\n\n- Angular 21 (standalone components)\n- TypeScript\n- RxJS\n- Bootstrap 5\n- Spoonacular API\n\n## How The App Works Internally ⚙️\n\n1. User navigates through Angular Router links in the header.\n2. UI components call dedicated services for each data type.\n3. Services use HttpClient to call Spoonacular endpoints.\n4. Responses are rendered in cards and detail sections.\n5. Loading and error states are shown to improve UX.\n\n### Services\n\n- RandomRecipes service:\n\t- Endpoint: /recipes/random\n\t- Used on Home page (initial list + load more)\n- SearchService:\n\t- Endpoint: /recipes/complexSearch\n\t- Used on Search page\n- SingleRecipe service:\n\t- Endpoints: /recipes/{id}/information and /recipes/{id}/similar\n\t- Used on Recipe details page\n\n## Project Structure (High Level) 📁\n\n- src/app/components\n\t- header, footer\n\t- pages/home\n\t- pages/search\n\t- pages/about\n\t- pages/single-recipe\n- src/app/services\n\t- random-recipes\n\t- search\n\t- single-recipe\n- src/environments\n\t- environments.example.ts (this file will become 'environment.ts' to work properly)\n\n## API Key Setup 🔐\n\nThis project uses Spoonacular API. Add your key here:\n\n- File: src/environments/environments-example.ts\n- Property: apiKey\n\nExample:\n\n```ts\nexport const environment = {\n\tapiKey: 'YOUR_API_KEY_HERE',\n};\n```\n\nThen, rename the file to 'environment.ts'.\n\n## Run Locally 🚀\n\nInstall dependencies:\n\n```bash\nnpm install\n```\n\n⚠️ Set up your API Key as instruced previouly.\n\nStart development server:\n\n```bash\nng serve\n```\n\nOpen:\n\n- http://localhost:4200/\n\n## Build And Test 🧪\n\nBuild:\n\n```bash\nnpm run build\n```\n\nUnit tests:\n\n```bash\nnpm test\n```\n\n## UX Notes 🎨\n\n- Responsive layout for desktop and mobile.\n- Clear loading and error feedback.\n- Accessible external links using target _blank + rel noopener noreferrer.\n\n## Built With ⚡\n\n- Recipe data: [Spoonacular API](https://spoonacular.com/food-api)\n- Built with Angular\n\n## License 📄\n\nThis project is open source under the terms of the [MIT License](LICENSE).\n\n## 💬 Connect with Me\nFollow my journey and other projects on:\n- **LinkedIn:** [lucsantosdev](https://www.linkedin.com/in/lucsantosdev)\n- **GitHub:** [lucsantosdev](https://github.com/lucsantosdev)\n- **Email:** [lucsantosdev@gmail.com](mailto:lucsantosdev@gmail.com)\n- **Support Me:** [Ko-Fi](https://ko-fi.com/lucsantosdev)\n\n---\n\n🧠 Je 9:23-24\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucsantosdev%2Fapp-food-recipes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flucsantosdev%2Fapp-food-recipes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucsantosdev%2Fapp-food-recipes/lists"}