{"id":28196953,"url":"https://github.com/sehansi-9/recipe-sharing-platform","last_synced_at":"2025-08-01T03:05:53.949Z","repository":{"id":286657827,"uuid":"962110670","full_name":"sehansi-9/recipe-sharing-platform","owner":"sehansi-9","description":"Recipe Hub is an interactive recipe sharing site ","archived":false,"fork":false,"pushed_at":"2025-04-09T16:03:33.000Z","size":159,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-16T16:13:40.445Z","etag":null,"topics":["bootstrap","context-api","reactjs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/sehansi-9.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":"2025-04-07T17:01:32.000Z","updated_at":"2025-04-13T07:42:55.000Z","dependencies_parsed_at":"2025-04-07T18:40:21.216Z","dependency_job_id":null,"html_url":"https://github.com/sehansi-9/recipe-sharing-platform","commit_stats":null,"previous_names":["sehansi-9/recipe-sharing-platform"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sehansi-9/recipe-sharing-platform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sehansi-9%2Frecipe-sharing-platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sehansi-9%2Frecipe-sharing-platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sehansi-9%2Frecipe-sharing-platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sehansi-9%2Frecipe-sharing-platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sehansi-9","download_url":"https://codeload.github.com/sehansi-9/recipe-sharing-platform/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sehansi-9%2Frecipe-sharing-platform/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268162385,"owners_count":24205701,"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-08-01T02:00:08.611Z","response_time":67,"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":["bootstrap","context-api","reactjs"],"created_at":"2025-05-16T16:14:31.341Z","updated_at":"2025-08-01T03:05:53.885Z","avatar_url":"https://github.com/sehansi-9.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Recipe Hub 🍽️ by Sehansi Perera\n\nWelcome to **Recipe Hub** – the ultimate recipe app that brings you a world of culinary delights! With an easy-to-use interface, you can browse, filter, and favorite your favorite recipes, and even share them with your friends! Whether you're a seasoned chef or just getting started in the kitchen, Recipe Hub has everything you need. \n\n---\n\n## Features \n\n- **Home Page**: Displays all available recipes from a mock dummy JSON API. \n- **Recipe Filtering**: Easily filter recipes by meal type like Chicken, Vegetarian, etc.\n- **Search Bar**: Find your favorite recipes by searching for ingredients or meal names. \n- **Favorites**: Save your favorite recipes and access them easily via the \"Favorites\" tab on the navbar. \n- **Recipe Details**: Clicking on a recipe takes you to a detailed page showing ingredients, step-by-step instructions, and a timer. \n- **Interactive Timer**: Track your meal prep time for better kitchen management. \n- **Social Sharing**: Share your recipes on social media platforms like Twitter, Facebook, and WhatsApp. \n- **Interactive Rating System**: Add your rating to your favourite recipes\n- **Printable Recipes**: Easily get your favourite recipes in print format \n- **User Recipe Management**: Add, update, and delete your own recipes. \n- **Local Storage**: User details, favorite meals, and personal recipes are stored in the browser's local storage. \n- **React Router**: Smooth navigation throughout the app using React Router. \n- **Context API**: Manage global states, such as user data and favorite recipes. \n- **Bootstrap**: Fully responsive design with Bootstrap for a clean, modern look. \n\n---\n\n## Tech Stack \n\n- **React**: For building the UI with reusable components.\n- **Bootstrap**: To make the app fully responsive and stylish.\n- **React Router**: For seamless navigation between pages.\n- **Context API**: To manage the global state for user data and favorite recipes.\n- **LocalStorage**: To persist user data and preferences.\n- **Mock JSON API**: For fetching recipe data. \u003chttps://dummyjson.com/docs/recipes\u003e\n- **CSS**: For custom styling and making the app visually appealing.\n\n---\n## Flow\n- User logins/signs up (The site blocks all routes and directs to auth page if no user credentials are available in local storage)\n- Unfilled fields during auth process are instantly alerted\n- User data, user favourites, and new recipes added by the user are stored in local storage; deleting and updating the added recipes are instantly updated in the local storage\n- Error messages are displayed if fetching from API fails\n- The logout button clears user data from local storage and redirects to auth page, blocking all routes.\n\n## Screenshots \n\n### Home Page with search bar\n![Home Page with search bar](https://github.com/user-attachments/assets/2cdece7b-5eb8-4053-8065-f1d58f6bb7be)\n### Detailed Recipe Page with timer and social sharable options\n![Detailed Recipe Page](https://github.com/user-attachments/assets/ae8698fc-1645-4bdc-be90-af8cb7282087)\n### Printable Recipes\n![Printable Recipes](https://github.com/user-attachments/assets/10e25326-6d31-4ac2-af6f-133625ec7992)\n### Adding a new recipe\n![Adding a new recipe](https://github.com/user-attachments/assets/b63744af-7031-453f-9421-6240fbd3a01c)\n### Added Recipes that are editable\n![Added Recipes that are editable](https://github.com/user-attachments/assets/529292f9-6e6a-40a7-a08e-cdf78409eee3)\n### Sign up mock-up\n![Sign up mock-up](https://github.com/user-attachments/assets/af213a21-42c7-46fc-b8de-8d595a9ff8af)\n\n---\n\n## Folder Structure \n\n```plaintext\n/src\n  ├── /components   # Reusable UI components like RecipeCard, RecipeDetails, etc.\n  ├── /contexts     # Global state management with Context API.\n  ├── /css          # Custom CSS files for styling.\n  ├── /pages        # Pages such as Home, RecipeDetails, Favorites, etc.\n  └── /services     # Fetching data from the Mock API.\n```\n## How to Run the App \n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/sehansi-9/recipe-sharing-platform.git\n   ```\n2. Navigate to the project folder:\n   ```bash\n   cd recipe-sharing-platform\n   ```\n2. Install the dependencies:\n   ```bash\n   npm install\n   ```\n3. Start the app:\n   ```bash\n   npm run dev\n   ```\n ---\nNow, you can open your browser and visit (http://localhost:3000) to check out the Recipe Hub! \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsehansi-9%2Frecipe-sharing-platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsehansi-9%2Frecipe-sharing-platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsehansi-9%2Frecipe-sharing-platform/lists"}