Skip to content

SE25GroupProject/my-cookbook

Repository files navigation



New Demo!

New Demo!



🍳 What is CookBook?

CookBook is your ultimate AI-powered kitchen assistant that makes cooking stress-free, fun, and delicious! 🎉
Whether you're working with a stocked pantry or just a few ingredients, CookBook will help you whip up amazing recipes tailored to what you have.

Why CookBook Stands Out:

  • ✨ Easy to Use: A super-friendly platform where you can simply input your ingredients, and CookBook will suggest recipes instantly.
  • 📖 Step-by-Step Guidance: Get detailed, easy-to-follow instructions for every recipe.
  • 🌟 Flexible & Adaptable: Use as few or as many ingredients as you want—CookBook adjusts to you!
  • 🍴 Recipes for Everyone: Explore a variety of recipes across multiple cuisines and cultures.
  • 💬 Social & Interactive: Share recipes, engage with the community, and build your own recipe collection.

With CookBook, you'll never run out of cooking inspiration again! 🥗🍜🍰


🤔 Why Choose CookBook?

Most of us have faced these situations:
1️⃣ Craving something delicious, but delivery isn't an option.
2️⃣ Staring at your pantry, unsure of what to make with what's available.
3️⃣ Wanting to try something new and exciting, but need guidance.

How CookBook Solves These Problems:

  • 🍳 Ingredient-Based Recipes: Enter the ingredients you have, and CookBook finds recipes to match.
  • 🍲Custom Recipes: Create and store your favorite recipes, which might not be immediately available in our database!
  • 📜 Step-by-Step Instructions: Follow clear directions, even if you're new to cooking!
  • 🌍 Explore Global Cuisines: Try dishes from different cultures with ease.
  • 🖥️ Familiar & Intuitive Interface: Just like your favorite search engine, simply enter your ingredients and hit "Proceed" to get recipe suggestions.
  • 💬 Engage with a Community: Post, comment, and share recipes with fellow food lovers.

CookBook isn’t just a tool—it’s your cooking companion, saving time and bringing creativity to your kitchen! 🍲✨


Content

| What's New | Installations | Examples | Style Checker & Code Fomatter | Code Coverage | Why CookBook? | Team | Support |



🚀 What's New?

New Features:

  • 🏠 User Accounts: Log in for a personalized experience—access your saved recipes, posts, and settings in one place.
  • ✍️ Custom Recipes: Create your own dishes, add ingredients and steps, then save or share them.
  • 🌎 Social Media Forum: Post pictures, share recipes, and chat with other cooks in a lively foodie community.
  • Favorite Recipes: Mark your top picks for quick access anytime.
  • 🔄 Refactored APIs: Smoother, faster performance for searching and posting with no hiccups.

With CookBook, cooking becomes an adventure. What will you create today? 🥘👨‍🍳👩‍🍳

Click the image above to watch the demo video on YouTube! 🚀

🚀 Better Software Design

CookBook is designed with scalability, safety, and reliability in mind. The software architecture includes modern solutions to ensure a seamless experience for users.

Scalability Enhancements

  • Content Delivery Network (CDN): Accelerates content delivery by distributing data globally.
  • Load Balancing: Ensures optimal resource utilization and improves availability.
  • Cache: Reduces latency and increases speed by caching frequently accessed content.

Safety Enhancements

  • Domain: Ensures secure domain configurations.
  • SSL/TLS: Encrypts communication between users and the server for secure data transfer.
  • DDoS Protection: Protects against distributed denial-of-service attacks to ensure site reliability.

🛠️Installations

Prerequisites

Before setting up the project, ensure you have the following installed:

  • GROQ: Create an API key.
  • Create a .env file in the api folder with the following details:
ATLAS_URI = ...
DATABASE = cookbook
GROQ_API_KEY = ...
PORT = 8000

📊 Dataset

You can find the dataset used for this project here

Installation

For more in-depth installation instrctions, view our INSTALL.md

🔧 Backend Installation

Follow these steps to set up and run the backend server:

  1. Navigate to the API folder:

    cd api
    
  2. Install required dependencies:

    pip install -r requirements.txt
    
  3. Run the application server:

    python -m uvicorn main:app --reload

🛠️Trouble Shooting

In case you run into any issues running the above commands, some operating systems may require you to use python3 instead of python and pip3 instead of pip.

🎨Frontend Installation

To set up the front end React app, do:

  1. Navigate to the frontend folder:

    cd frontend
    
    
  2. Install required dependencies:

    npm install
    
  3. If the above command fails, use the following alternative::

    npm install --legacy-peer-deps
    
  4. Start the React app:

    npm start

Examples

✨ New Functions

CookBook has been upgraded with exciting new features to make your cooking experience smarter, more interactive, and hassle-free! Below are the highlights of the latest functionalities added:

🔑 User Accounts: Your Personalized Cooking Hub

Now you can log in and create your own CookBook experience!
Save your favorite recipes, manage your posts, and customize your settings—all in one place.
Your kitchen, your way! 👨‍🍳📖✨

User Accounts Screenshot


🍳 Custom Recipes: Your Creations, Your Rules

Got a secret family recipe? Or just experimenting with flavors?
Create and save your own recipes—add ingredients, write step-by-step instructions, and keep them private or share them with the world!
CookBook is now truly yours. 📝🥘🔥

Custom Recipes Screenshot


🌍 Social Media Forum: Connect with Fellow Foodies

Cooking is more fun together! 🎉
Post your latest kitchen creations, share tips, swap recipes, and chat with other passionate cooks in a lively foodie community.
It’s like your favorite social platform, but just for food! 🍔💬

Social Media Forum Screenshot


⭐ Favorite Recipes: Never Lose That Perfect Dish

Found a recipe you love?
Now you can favorite your top picks for quick access anytime.
No more digging through search results—your go-to dishes are just a click away! ❤️🍛

Favorite Recipes Screenshot


🚀 Refactored APIs: Faster, Smoother, Better

We’ve upgraded the backend for blazing-fast performance!
Enjoy smoother recipe searches, quicker posting, and an overall better user experience—with no annoying slowdowns.
CookBook now works harder, so you can cook smarter! ⚡👨‍🍳

Old Functions

🎤 Multiple Voice-Guided Recipes

A fresh addition! Choose from multiple voice options to guide you through cooking, enhancing convenience and enabling hands-free operation.

Voice-Guided Recipes Screenshot


🖼️ Personalized Themes

Make CookBook your own with beautifully designed themes like Midnight Chef, Literary Lemon, and more. Create the perfect cooking atmosphere tailored to your style.

Personalized Themes Screenshot


📝 Printable Meal Plans

Plan your meals for the week and print them with ease! CookBook helps you stay organized by preparing a clear, printable meal plan to simplify your cooking schedule.

Printable Meal Plans Screenshot


🛒 PDF Shopping List Export

Easily generate shopping lists from selected recipes and export them as PDFs for offline access and convenience. Save time and never forget an ingredient while shopping!

Shopping List Export Screenshot


🍝 Advanced Recipe Filters

Looking for something quick? Or perhaps you want to try a specific cuisine? Use advanced filters to narrow down recipes by:

  • Cuisine type
  • Cooking time
  • Dietary preferences

Recipe Filters Screenshot


🤝 Social Sharing & Quick Access

Share your favorite recipes instantly via Discord, Slack, or other social media platforms. Collaboration in the kitchen has never been easier!

Social Sharing Screenshot

FAQ Screenshot


  • This is the CookBook HomePage that should automatically open in a browser after executing the command: 'npm start'

HomePage


  • The user can use the search bar to enter the ingredients one by one, and then proceed by clicking the arrow on the right.

HomePage


  • The user would then be redirected to the page showing the recipe suggestions.

HomePage


  • The details of a recipe can be viewed by simple clicking on a recipe from the list of recipes being displayed.

HomePage



  • Start the App by URL. case

  • Above content mentions that users may manually input keyword, and click on 'search tag' to create some keyword search tags to search recepies. Besides, users may also click on some "food tags" to search receipes without specific input. For example, we may select "milk" tag:

case


  • Then, we may have results shown as below:

case


  • What is more, if users are not sure that tags to be chosen, they are able to use sliders to set some values for [Calorie, Fat, Suger, Protain]. The filtered recepies will be shown after using this kind of search. For example, if we want receipes that fulfill some requirements as:

case


  • As former example cases, filtered results are displayed:

case

Style Checker and Code Fomatter

  • IDE and Style Checker: VSCode

  • Code Style Formatter: Beautify

  • Code Syntax Checker : Eslint for Vscode plugin.

Following extensions have to be added to you VS Code editor:

  • For Eslint: Install - dbaeumer.vscode-eslint
  • For Prettier: Install - esbenp.prettier-vscode
  • Update the settings.json of your VS Code editor to include these statements (you can add them to your existing ones):
{
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "eslint.alwaysShowStatus": true,
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  "[json]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode",
    "editor.formatOnSave": true
  }
}

Code Coverage

Codecov civ

In case of any queries and for additional help, please email us at: help.cookbook@gmail.com

Meet the Team

Version 5

Camille Jones
Camille Jones

Jacob Allard
Jacob Allard

Michael Sanchez
Michael Sanchez

Version 4

Soundarya Khanapur
Soundarya Khanapur

Mugdha Joshi
Mugdha Joshi

Jing Huang
Jing Huang

Version 3

  • Akshay Ashutosh Dongare
  • Anish Mulay
  • Ashwattha Phatak
  • Team

Version 2.x

  • Pinxiang Wang
  • Yuheng Zhu
  • Mengzhe Wang
  • Jiayuan Huang
  • Yiran Zhu

Version 1.0

Team

Support

You can find the dataset used for this project here

📊 Score Card

Total Grade: 151

Factor Score Notes
Video 3 https://www.youtube.com/watch?v=TokbsQ_YMMg
Workload 3 Distributed
Number of commits 3 50+
Number of commits: by different people 3 https://github.com/SE25GroupProject/my-cookbook/graphs/contributors
Issues report: There are many 3 https://github.com/SE25GroupProject/my-cookbook/issues
Issues are being closed 3 https://github.com/SE25GroupProject/my-cookbook/issues?q=is%3Aissue+is%3Aclosed
DOI badge 3 https://doi.org/10.5281/zenodo.14928829
Docs: format 3 https://github.com/SE25GroupProject/my-cookbook/blob/main/.github/workflows/autopep8.yml
Docs: description 3 https://github.com/SE25GroupProject/my-cookbook
Docs: short animated video 3
Docs: strong punchlines 3 https://github.com/SE25GroupProject/my-cookbook
Docs: mini tutorials 3 https://github.com/SE25GroupProject/BurnoutExtreme/blob/master/Tutorials.md#signup-and-sign-in
Use of version control tools 3 https://github.com/SE25GroupProject/my-cookbook/blob/main/.github/workflows/autopep8.yml
Use of style checkers 3 https://github.com/SE25GroupProject/BurnoutExtreme/blob/master/.github/workflows/autopep8.yml
Use of code formatters. 3 https://github.com/SE25GroupProject/my-cookbook/blob/main/.github/workflows/flake8.yml
Use of syntax checkers. 3 https://github.com/SE25GroupProject/my-cookbook?tab=readme-ov-file#style-checker-and-code-fomatter
Use of code coverage 3 https://coveralls.io/github/SE25GroupProject/my-cookbook?branch=main
Other automated analysis tools 2 https://github.com/SE25GroupProject/my-cookbook/blob/main/.github/workflows/build.yml
Test cases exist 3 https://github.com/SE25GroupProject/my-cookbook/tree/main/tests
Test cases are routinely executed 2 https://github.com/SE25GroupProject/my-cookbook/tree/main/tests
The files http://contributing.md/ lists coding standards and lots of tips 3
Issues are discussed before they are closed 3 https://github.com/SE25GroupProject/my-cookbook/issues
Chat channel: exists 3 private discord group chat
Test cases: a large proportion of the issues related to handling failing cases. 3 https://github.com/SE25GroupProject/my-cookbook/issues
Evidence that the whole team is using the same tools 3
Evidence that the members of the team are working across multiple places in the code base 3 https://github.com/SE25GroupProject/my-cookbook/pulse
Short release cycles 3
Does your website and documentation provide a clear, high-level overview of your software? 3 https://github.com/SE25GroupProject/my-cookbook
Does your website and documentation clearly describe the type of user who should use your software? 3 https://github.com/SE25GroupProject/my-cookbook
Do you publish case studies to show how your software has been used by yourself and others? 3
Is the name of your project/software unique? 3 https://github.com/SE25GroupProject/my-cookbook
Is your project/software name free from trademark violations? 3
Is your software available as a package that can be deployed without building it? 3 https://github.com/SE25GroupProject/my-cookbook
Is your software available for free? 3 https://github.com/SE25GroupProject/my-cookbook
Is your source code publicly available to download, either as a downloadable bundle or via access to a source code repository? 3 https://github.com/SE25GroupProject/my-cookbook
Is your software hosted in an established, third-party repository like GitHub? 3
Is your documentation clearly available on your website or within your software? 3
Does your documentation include a "quick start" guide, that provides a short overview of how to use your software with some basic examples of use? 3 https://github.com/SE25GroupProject/my-cookbook
If you provide more extensive documentation, does this provide clear, step-by-step instructions on how to deploy and use your software? 3
Do you provide a comprehensive guide to all your software’s commands, functions and options? 3 https://github.com/SE25GroupProject/my-cookbook
Do you provide troubleshooting information that describes the symptoms and step-by-step solutions for problems and error messages? 3
If your software can be used as a library, package or service by other software, do you provide comprehensive API documentation? 3 https://github.com/SE25GroupProject/my-cookbook/blob/main/INSTALL.md
Do you store your documentation under revision control with your source code? 2
Do you publish your release history e.g. release data, version numbers, key features of each release etc. on your web site or in your documentation? 3
Does your software describe how a user can get help with using your software? 3
Does your website and documentation describe what support, if any, you provide to users and developers? 3 https://github.com/SE25GroupProject/my-cookbook/blob/main/INSTALL.md
Does your project have an e-mail address or forum that is solely for supporting users? 3
Are e-mails to your support e-mail address received by more than one person? 3
Does your project have a ticketing system to manage bug reports and feature requests? 2 https://github.com/SE25GroupProject/my-cookbook/issues
Is your project's ticketing system publicly visible to your users, so they can view bug reports and feature requests? 3 https://github.com/SE25GroupProject/my-cookbook/issues

Software Sustainability Evaluation self-assessment table:

Category Question Yes No Evidence
Q1 - Software Overview
Question 1.1 Does your website and documentation provide a clear, high-level overview of your software?
Question 1.2 Does your website and documentation clearly describe the type of user who should use your software?
Question 1.3 Do you publish case studies to show how your software has been used by yourself and others?
Q2 - Identity
Question 2.1 Is the name of your project/software unique?
Question 2.2 Is your project/software name free from trademark violations?
Q3 - Availability
Question 3.1 Is your software available as a package that can be deployed without building it?
Question 3.2 Is your software available for free? https://github.com/SE25GroupProject/my-cookbook/issues
Question 3.3 Is your source code publicly available to download, either as a downloadable bundle or via access to a source code repository?
Question 3.4 Is your software hosted in an established, third-party repository like GitHub, BitBucket, LaunchPad, or SourceForge? https://github.com/SE25GroupProject/my-cookbook/issues
Q4 - Documentation
Question 4.1 Is your documentation clearly available on your website or within your software? https://github.com/SE25GroupProject/my-cookbook/issues
Question 4.2 Does your documentation include a "quick start" guide, that provides a short overview of how to use your software with some basic examples of use?
Question 4.3 If you provide more extensive documentation, does this provide clear, step-by-step instructions on how to deploy and use your software? https://github.com/SE25GroupProject/my-cookbook/issues
Question 4.4 Do you provide a comprehensive guide to all your software’s commands, functions and options?
Question 4.5 Do you provide troubleshooting information that describes the symptoms and step-by-step solutions for problems and error messages?
Question 4.6 If your software can be used as a library, package or service by other software, do you provide comprehensive API documentation?
Question 4.7 Do you store your documentation under revision control with your source code?
Question 4.8 Do you publish your release history e.g. release data, version numbers, key features of each release etc. on your web site or in your documentation?
Q5 - Support
Question 5.1 Does your software describe how a user can get help with using your software?
Question 5.2 Does your website and documentation describe what support, if any, you provide to users and developers?
Question 5.3 Does your project have an e-mail address or forum that is solely for supporting users?
Question 5.4 Are e-mails to your support e-mail address received by more than one person?
Question 5.5 Does your project have a ticketing system to manage bug reports and feature requests?
Question 5.6 Is your project's ticketing system publicly visible to your users, so they can view bug reports and feature requests? https://github.com/SE25GroupProject/my-cookbook/issues
Q6 - Maintainability
Question 6.1 Is your software’s architecture and design modular?
Question 6.2 Does your software use an accepted coding standard or convention?
Q7 - Open Standards
Question 7.1 Does your software allow data to be imported and exported using open data formats?
Question 7.2 Does your software allow communications using open communications protocols?
Q8 - Portability
Question 8.1 Is your software cross-platform compatible? We use docker
Q9 - Accessibility
Question 9.1 Does your software adhere to appropriate accessibility conventions or standards?
Question 9.2 Does your documentation adhere to appropriate accessibility conventions or standards?
Q10 - Source Code Management
Question 10.1 Is your source code stored in a repository under revision control? https://github.com/SE25GroupProject/my-cookbook
Question 10.2 Is each source code release a snapshot of the repository?
Question 10.3 Are releases tagged in the repository?
Question 10.4 Is there a branch of the repository that is always stable? (i.e. tests always pass, code always builds successfully) main branch
Question 10.5 Do you back-up your repository?
Q11 - Building & Installing
Question 11.1 Do you provide publicly-available instructions for building your software from the source code?
Question 11.2 Can you build, or package, your software using an automated tool?
Question 11.3 Do you provide publicly-available instructions for deploying your software? https://github.com/SE25GroupProject/my-cookbook/blob/main/INSTALL.md
Question 11.4 Does your documentation list all third-party dependencies? https://github.com/SE25GroupProject/my-cookbook/blob/main/api/requirements.txt
Question 11.5 Does your documentation list the version number for all third-party dependencies?
Question 11.6 Does your software list the web address, and licences for all third-party dependencies and say whether the dependencies are mandatory or optional?
Question 11.7 Can you download dependencies using a dependency management tool or package manager?
Question 11.8 Do you have tests that can be run after your software has been built or deployed to show whether the build or deployment has been successful? JUnit
Q12 - Testing
Question 12.1 Do you have an automated test suite for your software? JUnit
Question 12.2 Do you have a framework to periodically (e.g. nightly) run your tests on the latest version of the source code? https://github.com/SE25GroupProject/my-cookbook/tree/main/.github/workflows
Question 12.3 Do you use continuous integration, automatically running tests whenever changes are made to your source code? https://github.com/SE25GroupProject/my-cookbook/tree/main/.github/workflows
Question 12.4 Are your test results publicly visible? https://github.com/SE25GroupProject/my-cookbook/tree/main/.github/workflows
Question 12.5 Are all manually-run tests documented?
Q13 - Community Engagement
Question 13.1 Does your project have resources (e.g. blog, Twitter, RSS feed, Facebook page, wiki, mailing list) that are regularly updated with information about your software? https://github.com/SE25GroupProject/my-cookbook/blob/main/README.md
Question 13.2 Does your website state how many projects and users are associated with your project?
Question 13.3 Do you provide success stories on your website?
Question 13.4 Do you list your important partners and collaborators on your website?
Question 13.5 Do you list your project's publications on your website or link to a resource where these are available? no publications
Question 13.6 Do you list third-party publications that refer to your software on your website or link to a resource where these are available? no third party publications
Question 13.7 Can users subscribe to notifications to changes to your source code repository?
Question 13.8 If your software is developed as an open source project (and, not just a project developing open source software), do you have a governance model? https://github.com/SE25GroupProject/my-cookbook/blob/main/LICENS
Q14 - Contributions
Question 14.1 Do you accept contributions (e.g. bug fixes, enhancements, documentation updates, tutorials) from people who are not part of your project?
Question 14.2 Do you have a contributions policy? https://github.com/SE25GroupProject/my-cookbook/blob/main/CONTRIBUTING.md
Question 14.3 Is your contributions' policy publicly available?
Question 14.4 Do contributors keep the copyright/IP of their contributions?
Q15 - Licensing
Question 15.1 Does your website and documentation clearly state the copyright owners of your software and documentation? https://github.com/SE25GroupProject/my-cookbook/blob/main/LICENSE
Question 15.2 Does each of your source code files include a copyright statement?
Question 15.3 Does your website and documentation clearly state the licence of your software? https://github.com/SE25GroupProject/my-cookbook/blob/main/LICENSE
Question 15.4 Is your software released under an open source licence? https://github.com/SE25GroupProject/my-cookbook/blob/main/LICENSE
Question 15.5 Is your software released under an OSI-approved open-source licence? https://github.com/SE25GroupProject/my-cookbook/blob/main/LICENSE
Question 15.6 Does each of your source code files include a licence header?
Question 15.7 Do you have a recommended citation for your software? https://github.com/SE25GroupProject/my-cookbook/blob/main/LICENSE
Q16 - Future Plans
Question 16.1 Does your website or documentation include a project roadmap (a list of project and development milestones for the next 3, 6 and 12 months)? Future contributions on the poster
Question 16.2 Does your website or documentation describe how your project is funded, and the period over which funding is guaranteed? no funding
Question 16.3 Do you make timely announcements of the deprecation of components, APIs, etc.? github won't be maintained by us
CookBook
├─ .DS_Store
├─ .git
│  ├─ COMMIT_EDITMSG
│  ├─ FETCH_HEAD
│  ├─ HEAD
│  ├─ ORIG_HEAD
│  ├─ branches
│  ├─ config
│  ├─ description
│  ├─ hooks
│  │  ├─ applypatch-msg.sample
│  │  ├─ commit-msg.sample
│  │  ├─ fsmonitor-watchman.sample
│  │  ├─ post-update.sample
│  │  ├─ pre-applypatch.sample
│  │  ├─ pre-commit.sample
│  │  ├─ pre-merge-commit.sample
│  │  ├─ pre-push.sample
│  │  ├─ pre-rebase.sample
│  │  ├─ pre-receive.sample
│  │  ├─ prepare-commit-msg.sample
│  │  ├─ push-to-checkout.sample
│  │  ├─ sendemail-validate.sample
│  │  └─ update.sample
│  ├─ index
│  ├─ info
│  │  └─ exclude
│  ├─ logs
│  │  ├─ HEAD
│  │  └─ refs
│  │     ├─ heads
│  │     │  ├─ deployment
│  │     │  ├─ feature
│  │     │  │  ├─ sharing
│  │     │  │  └─ voice
│  │     │  ├─ main
│  │     │  └─ testing
│  │     └─ remotes
│  │        └─ origin
│  │           ├─ HEAD
│  │           ├─ deployment
│  │           ├─ feature
│  │           │  ├─ custom-recipe
│  │           │  ├─ sharing
│  │           │  └─ voice
│  │           ├─ main
│  │           └─ testing
│  ├─ objects
│  │  ├─ 05
│  │  │  └─ e0965be70269e9d0e80b4a7abcd19cee5045aa
│  │  ├─ 0b
│  │  │  └─ 3319b88eb440710814e313a0a0ec5af41a83cc
│  │  ├─ 0d
│  │  │  └─ ff004f27b6e45498cbf98849a09a1a6af9874c
│  │  ├─ 0e
│  │  │  └─ 94498776b5f0afd22be43a380e9ecbac725047
│  │  ├─ 12
│  │  │  └─ dfb43a249310457988157ac56bcf7ee1156374
│  │  ├─ 1c
│  │  │  └─ 9c24ec1a7f026f7cef4fb6f8abb431d4079fc5
│  │  ├─ 1d
│  │  │  └─ 0b4eb0ad5ea8fa4f2fa85fbf3b281dbb1b41b7
│  │  ├─ 1f
│  │  │  └─ 885a64eb4ad8eacb492ce1da01b557b23b19b5
│  │  ├─ 21
│  │  │  └─ b395ebc3bc7eaba702fa32badf955b2ea69958
│  │  ├─ 23
│  │  │  └─ a58ac52d9211d707e1ac0ec484736c5809bc2e
│  │  ├─ 27
│  │  │  └─ bc5baa52acca8ad0f3a0321a0957458de1675e
│  │  ├─ 28
│  │  │  └─ e92174ac0219af02b7f9a124f54a4e46a4f3a6
│  │  ├─ 2a
│  │  │  └─ 02c6a9003c06e0eb63232bca3d526a95c93095
│  │  ├─ 2b
│  │  │  └─ 79db553eecee4bea5cacd328834d8705b45aa7
│  │  ├─ 2c
│  │  │  ├─ 20e3def01cf18f20987259a3d859b4aa8f5f9d
│  │  │  └─ ee3a95364a8844f0433e5213c4c7b22e66f80f
│  │  ├─ 2d
│  │  │  └─ 9a284218a2ef36de0897f8bd40d9ba9fd2743a
│  │  ├─ 33
│  │  │  └─ 89e18869d320d3a1b5dc4b4f6aaa2ba3688c90
│  │  ├─ 35
│  │  │  └─ 5047b0ddb8cea63068b0ccd64b9365cfa2df9c
│  │  ├─ 38
│  │  │  └─ 5df5b7d9247910d69f0ecc50c8a5e2be19f8c7
│  │  ├─ 3a
│  │  │  └─ d62964ed81b6697f6c7218a6c9ca5fe8a7a351
│  │  ├─ 3b
│  │  │  └─ 302566fe62c27c8ce825f6d64286cd011e213d
│  │  ├─ 3f
│  │  │  └─ 2367dc9f0bf3a4cc7f2d42b5b485a2932115d2
│  │  ├─ 43
│  │  │  └─ 9ada9155dd5c1da0181bf8e6e071cb5c435e35
│  │  ├─ 45
│  │  │  ├─ 08d6f2117f9bd57e21e482f675817c60e30078
│  │  │  ├─ eecb95e928111642f35a0fda1e9fb35f84dc87
│  │  │  └─ eeeea6f81bf2451b45891eb49852b2d6d79c0f
│  │  ├─ 4e
│  │  │  └─ b258465db79cd4771e33ed907371c5a334f480
│  │  ├─ 4f
│  │  │  └─ 1142f5630b93c095998e437e1a2bd20b607e94
│  │  ├─ 50
│  │  │  └─ 12b8fc470a0bfbce2cec7238e7a351a76ce7fc
│  │  ├─ 55
│  │  │  └─ 17db073566a2a557375d6ddb9ddafb488cc5c9
│  │  ├─ 56
│  │  │  └─ 465aec48cfe99f1102b7fd68f95ea016edebe0
│  │  ├─ 57
│  │  │  ├─ 8c8a608d48133177e145cbf2e59f9acbe1d21e
│  │  │  └─ cef333e32cc136fe715103bf37c9100197ec79
│  │  ├─ 5a
│  │  │  └─ 3eee8dac34dbbc230490e664670d49e9a24490
│  │  ├─ 5b
│  │  │  └─ ebb86cf4099e14503daaad9d8d3ef0446611cf
│  │  ├─ 5e
│  │  │  └─ c9021186b01b24c9adb84708079f58151a3e03
│  │  ├─ 62
│  │  │  └─ 49314f7b1d3a425b459964d54a49a6e1802601
│  │  ├─ 63
│  │  │  └─ 7b7f066d93d871872fab0654a371e02ac415b1
│  │  ├─ 64
│  │  │  └─ 0e0ef369946319891bbf6f37c7c803faafa516
│  │  ├─ 73
│  │  │  └─ fe86be6ada884538f65e3d8e55048cd254a797
│  │  ├─ 7c
│  │  │  └─ 31b0872a6fe49e72423d3ad7017a71eba0570b
│  │  ├─ 82
│  │  │  └─ 2df5e946e036b77730d86d6476b4d8819820e1
│  │  ├─ 84
│  │  │  └─ 03357d66ff432d5d5a3cfb0f0322104d379f83
│  │  ├─ 86
│  │  │  └─ fd607e06ed348d5a51318fddbb937548cc6e4c
│  │  ├─ 88
│  │  │  └─ 7b8d72e8c2d7422b0376bd37b16391176e8b00
│  │  ├─ 89
│  │  │  └─ 708ed1661d80ecc4010ba346df8207d06de455
│  │  ├─ 8a
│  │  │  └─ 71c83e5df64559b56e7af5e25f8d357b4b9e07
│  │  ├─ 8e
│  │  │  └─ 45ca7105f3836da20768d67a35c5c5ffc64bb5
│  │  ├─ 8f
│  │  │  ├─ 8a4a71e58a1e2c164c0b73a1ee623e6ed424a6
│  │  │  └─ baeca88855919dd266975e786a7269e55eba3c
│  │  ├─ 92
│  │  │  └─ c6daa84c49571b9aa61281c88ee210ead16e08
│  │  ├─ 93
│  │  │  └─ d8ccb1f59ef71e7b233dd34e4e2f117e42452a
│  │  ├─ 94
│  │  │  └─ 76207bb81ee44dbafad15cfb50de1a51283bc4
│  │  ├─ 95
│  │  │  └─ 08aac5b04a69782dfbeac1630ea7d57fbe26b3
│  │  ├─ 96
│  │  │  └─ 9129c099b42928c06cd01035067eca7facf56b
│  │  ├─ 97
│  │  │  └─ fc547d726b2ea87da271952e03fa659b4d75a8
│  │  ├─ 98
│  │  │  └─ 05126010b269bf288173db7623eaebc27ca1f1
│  │  ├─ 9c
│  │  │  └─ 997bee6ba58d20dcf3c678eebe1017d0c888e7
│  │  ├─ 9e
│  │  │  └─ 1dc1c0085312c944af86e3777e14eb88430b5c
│  │  ├─ a0
│  │  │  └─ 505556f638908eed62296a05ea19a9016bdd54
│  │  ├─ a5
│  │  │  └─ 9bbd4ded2aff28877e486141ed444419061b1d
│  │  ├─ a6
│  │  │  └─ f9da8d99465ec2b09e9af5adb984cd576bdb8a
│  │  ├─ a8
│  │  │  └─ 7d925906dd12e0e33d9bdb4ad50303a20928af
│  │  ├─ aa
│  │  │  └─ 42eb78e014d5916c16853d7713e591ed878178
│  │  ├─ ac
│  │  │  └─ 2f6c8814a74213fff124db7aabbc88ec3b3846
│  │  ├─ ae
│  │  │  └─ 2e39f23f2834d54a5d18dbc90e3cda3d00d201
│  │  ├─ af
│  │  │  ├─ 5706c29b537769ed01b173e62c12c7a09f255e
│  │  │  └─ f0407fa24f199085fc2ca399cd04698dab9dc1
│  │  ├─ b0
│  │  │  └─ d4d2e31be48d5245abc85a94052adc7111cadb
│  │  ├─ b2
│  │  │  └─ ee1df41a9ef6394b7c4f2832e436eee822ae2a
│  │  ├─ b4
│  │  │  └─ 43203e19ff74b71be21af72474e6033867d62e
│  │  ├─ b6
│  │  │  └─ ca86dacf42818d6f5e199d925db43676e62f85
│  │  ├─ ba
│  │  │  ├─ 0974b2e7a07a77153f9c777cfdd4b5251104b3
│  │  │  └─ 5c9c50582c1141dd237337321105cb9bcf1c30
│  │  ├─ be
│  │  │  └─ 1cdc8366f2b7562308ec152a69a774e0d62589
│  │  ├─ bf
│  │  │  └─ 2266d1193d4b0369743b2074054bf0e446e95f
│  │  ├─ c2
│  │  │  ├─ 6e9936d970b54f8e422c7538735bad3a93ff32
│  │  │  └─ cb2b753ec6664caceee8a6c2079243ee19bd6a
│  │  ├─ c4
│  │  │  └─ c35c40fc479461d898bbf13a3294b588870404
│  │  ├─ c9
│  │  │  └─ e9ef1c2e1fb2337c263cd33095573e91c932c2
│  │  ├─ cd
│  │  │  └─ 735018cba96ad337385e3666ea395f83e889ab
│  │  ├─ cf
│  │  │  └─ f3fc8f9916aa6ea1b4b97237168ca0bca71048
│  │  ├─ d2
│  │  │  └─ 40aa4500e7c05b0a475cf57115abb4c3ee49a1
│  │  ├─ d6
│  │  │  └─ ddd185635923c19a76d0a38bd66de0874399d4
│  │  ├─ db
│  │  │  ├─ 289e152c510a1feaa873bfcfcbc71afb548192
│  │  │  ├─ 2fb59dac5993906dbf0d712d9c28c0a867ee08
│  │  │  └─ 574e4410c6139964f7097e9483f6e18a1e80a7
│  │  ├─ dd
│  │  │  └─ c3e50fa76cf9f43532b6d9170f8b8abf9dd341
│  │  ├─ e1
│  │  │  └─ f5461b9a857e1592e6ead0387e856a9572239f
│  │  ├─ e2
│  │  │  └─ 624a1ef480ff481ea9355ae657e3f59e38386d
│  │  ├─ e4
│  │  │  └─ 6c17f5660215efa2296bc8842abdc3df74e6b8
│  │  ├─ e6
│  │  │  └─ 2c7589183ccaecccd1f603d02abe68ec51fea7
│  │  ├─ e7
│  │  │  ├─ 712e1b3fc982c63bf3900f167db4a128b99fcb
│  │  │  └─ 98ae6feeefec68ff154574fe6ee8b85c6badf9
│  │  ├─ ea
│  │  │  └─ 39a3ed6c9af3449f26a82a265ce23b53273b67
│  │  ├─ ee
│  │  │  └─ 50c4157b92ba1a5ed5b7f84cc0173cdb878626
│  │  ├─ ef
│  │  │  └─ d3b43ad008caac2176b0cc00a809df69c0ae27
│  │  ├─ f6
│  │  │  └─ 0368f89ab89ac1c06cd8a7ecedcc157b3ec588
│  │  ├─ fa
│  │  │  ├─ 81f02fff8948545949813a00a39eabaaadd9e6
│  │  │  └─ d083da3df884b22975a34cf43dad821edb56a5
│  │  ├─ fb
│  │  │  └─ 58b6fcd36eb073621a612501f45ec4d39d162f
│  │  ├─ fc
│  │  │  └─ 3efe393c5ef63c5dd47335eecf0497cbac209a
│  │  ├─ info
│  │  └─ pack
│  │     ├─ pack-120a108bc00379b2f122869f8014cfe85126262e.idx
│  │     ├─ pack-120a108bc00379b2f122869f8014cfe85126262e.pack
│  │     └─ pack-120a108bc00379b2f122869f8014cfe85126262e.rev
│  ├─ packed-refs
│  └─ refs
│     ├─ heads
│     │  ├─ deployment
│     │  ├─ feature
│     │  │  ├─ sharing
│     │  │  └─ voice
│     │  ├─ main
│     │  └─ testing
│     ├─ remotes
│     │  └─ origin
│     │     ├─ HEAD
│     │     ├─ deployment
│     │     ├─ feature
│     │     │  ├─ custom-recipe
│     │     │  ├─ sharing
│     │     │  └─ voice
│     │     ├─ main
│     │     └─ testing
│     └─ tags
├─ .github
│  └─ workflows
│     ├─ node.js.yml
│     ├─ python-app.yml
│     └─ workflow.yml
├─ .gitignore
├─ CITATION.cff
├─ CODE_OF_CONDUCT.md
├─ CONTRIBUTING.md
├─ LICENSE
├─ README.md
├─ api
│  ├─ Dockerfile
│  ├─ __init__.py
│  ├─ main.py
│  ├─ models.py
│  ├─ requirements.txt
│  └─ routes.py
├─ assets
│  ├─ HomePage.PNG
│  ├─ HomePage_new.png
│  ├─ RecipeDetails.PNG
│  ├─ SearchBar.PNG
│  ├─ SearchResults.PNG
│  ├─ codecov.png
│  ├─ demo.gif
│  ├─ filterSearch1.png
│  ├─ filterSearch2.png
│  ├─ logo.png
│  ├─ tagSearch1.jpg
│  ├─ tagSearch2.jpg
│  ├─ team_edit.png
│  ├─ video1.m4v
│  └─ video2.m4v
├─ docker-compose.yml
├─ docs
│  ├─ Home.css
│  ├─ Safety.md
│  ├─ Scalability.md
│  ├─ api
│  │  ├─ main.html
│  │  ├─ models.html
│  │  └─ routes.html
│  ├─ api.html
│  ├─ components.html
│  ├─ images
│  │  ├─ 4a08d1b7-15a5-0eed-0f9f-0c0337f05c03.jpg
│  │  ├─ 8750c800-0485-f790-5fdc-5a8cf409301e.jpg
│  │  ├─ SSL.png
│  │  ├─ cache.png
│  │  ├─ cdn.png
│  │  ├─ e6fab1f1-ae30-31cf-b73f-aa548e18d0f4.jpg
│  │  ├─ fgfgfg4.jpg
│  │  ├─ load.png
│  │  ├─ load_balancing.png
│  │  ├─ screenshot1.png
│  │  └─ screenshot2.png
│  ├─ index.html
│  ├─ jquery.js
│  ├─ nicepage.css
│  ├─ nicepage.js
│  ├─ proj1rubric.md
│  ├─ proj1rubricComments.pdf
│  ├─ proj2rubric.md
│  ├─ search.js
│  └─ style
│     ├─ accordian.pack.js
│     └─ style.css
├─ frontend
│  ├─ .eslintignore
│  ├─ .eslintrc.json
│  ├─ .gitignore
│  ├─ .prettierignore
│  ├─ .prettierrc.json
│  ├─ .vscode
│  │  └─ settings.json
│  ├─ Dockerfile
│  ├─ README.md
│  ├─ package-lock.json
│  ├─ package.json
│  ├─ public
│  │  ├─ favicon.ico
│  │  └─ index.html
│  ├─ src
│  │  ├─ App.css
│  │  ├─ App.test.tsx
│  │  ├─ App.tsx
│  │  ├─ features
│  │  │  ├─ AppContent
│  │  │  │  ├─ AppContent.tsx
│  │  │  │  ├─ HomePage
│  │  │  │  │  ├─ AboutPage.tsx
│  │  │  │  │  ├─ ContactPage.tsx
│  │  │  │  │  ├─ HomePage.css
│  │  │  │  │  ├─ HomePage.test.tsx
│  │  │  │  │  ├─ HomePage.tsx
│  │  │  │  │  └─ photos
│  │  │  │  │     ├─ eighth.jpg
│  │  │  │  │     ├─ fifth.jpg
│  │  │  │  │     ├─ first.jpg
│  │  │  │  │     ├─ fourth.jpg
│  │  │  │  │     ├─ logo.png
│  │  │  │  │     ├─ nineth.jpg
│  │  │  │  │     ├─ second.jpg
│  │  │  │  │     ├─ seventh.jpg
│  │  │  │  │     ├─ sixth.jpg
│  │  │  │  │     ├─ tenth.jpg
│  │  │  │  │     └─ third.jpg
│  │  │  │  ├─ NutritionFilter
│  │  │  │  │  └─ CustomizedAccordions.tsx
│  │  │  │  ├─ RecipeInformation
│  │  │  │  │  ├─ RecipeInformation.css
│  │  │  │  │  ├─ RecipeInformation.test.tsx
│  │  │  │  │  ├─ RecipeInformation.tsx
│  │  │  │  │  ├─ getRecipeInformation.action.ts
│  │  │  │  │  ├─ getRecipeInformation.actionTypes.ts
│  │  │  │  │  ├─ getRecipeInformation.reducer.ts
│  │  │  │  │  ├─ getRecipeInformation.saga.ts
│  │  │  │  │  └─ no-image.png
│  │  │  │  ├─ RecipeList
│  │  │  │  │  ├─ RecipeList.css
│  │  │  │  │  ├─ RecipeList.tsx
│  │  │  │  │  ├─ getRecipeList.action.ts
│  │  │  │  │  ├─ getRecipeList.actionTypes.ts
│  │  │  │  │  ├─ getRecipeList.reducer.ts
│  │  │  │  │  └─ getRecipeList.saga.ts
│  │  │  │  └─ Tag
│  │  │  │     ├─ GetTags.tsx
│  │  │  │     ├─ TagList.css
│  │  │  │     ├─ getTagList.action.ts
│  │  │  │     ├─ getTagList.actionTypes.ts
│  │  │  │     ├─ getTags.reducer.ts
│  │  │  │     └─ getTags.saga.ts
│  │  │  ├─ GetIngredients
│  │  │  │  ├─ GetIngredients.tsx
│  │  │  │  ├─ getIngredients.action.ts
│  │  │  │  ├─ getIngredients.actionTypes.ts
│  │  │  │  ├─ getIngredients.reducer.ts
│  │  │  │  └─ getIngredients.saga.ts
│  │  │  ├─ Header
│  │  │  │  ├─ Header.css
│  │  │  │  ├─ Header.test.tsx
│  │  │  │  └─ Header.tsx
│  │  │  ├─ Navbar
│  │  │  │  ├─ Navbar.css
│  │  │  │  ├─ Navbar.test.tsx
│  │  │  │  └─ Navbar.tsx
│  │  │  ├─ apiMethods.ts
│  │  │  ├─ features.reducer.ts
│  │  │  └─ features.saga.ts
│  │  ├─ fonts
│  │  │  ├─ Roboto-Regular.ttf
│  │  │  └─ Roboto-Thin.ttf
│  │  ├─ index.css
│  │  ├─ index.tsx
│  │  ├─ logo.svg
│  │  ├─ react-app-env.d.ts
│  │  ├─ reportWebVitals.ts
│  │  ├─ setupTests.ts
│  │  └─ store.ts
│  └─ tsconfig.json
└─ tests
   ├─ .env
   ├─ coverage.xml
   ├─ sliderCollections.tsx
   └─ test_routes.py

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors