Skip to content

LeanneCodes/tasteful-twist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tasteful Twist

Project Overview

Tasteful Twist allows users to source recipes from a wide range of cuisines from around the world in just a few simple clicks. This has been made possible by integrating data from multiple server-side API requests that have a collective database of cuisines recipes. Users are able to navigate from the home page or navigation bar to their desired cuisine recipes which they would like to browse, such as Italian, Greek and Spanish dishes. Once selected the user will then be directed to that cuisine page where a wide range of recipes with meal macros, ingredients and cooking instructions can be found. Users are also able to save their favourite recipes to a local storage using JavaScript which can be accessed in a row and list formation on the favourites page.

Project Criteria

For a successful completion of this project, the team was required to adhere to strict criteria to ensure the application meets the client's standards. This criteria can be found listed below:

Requirements:

  • Create a real-world front-end application to address a real-world problem.
  • Integrate data from multiple server-side API requests.
  • Use Bootstrap for styling.
  • Ensure interactivity, accepting and responding to user input.
  • Avoid using alerts, confirms, or prompts; use modals instead.
  • Ensure responsiveness and a polished UI.
  • Implement client-side storage for persistent data.
  • Deploy the application to GitHub Pages.
  • Adhere to best practices for file structure, naming conventions, class/id naming, indentation, and comments.

User Story

As a cooking enthusiast with a desire for global culinary dishes, I want to effortlessly discover and explore recipes from various cuisines worldwide, so that I can broaden my knowledge in different cultures’ cuisines and prepare diverse and delicious meals from around the world. I want to be able to save these recipes and also share my own recipes for other users to explore and try for themselves.

Acceptance Criteria

1. Create a real-world front-end application to address a real-world problem.

  • It is done when the application is developed to solve a practical real-world problem, providing value to users.

2. Integrate data from multiple server-side API requests.

  • It is done when the application successfully retrieves and integrates data from at least two server-side APIs.

3. Use Bootstrap for styling.

  • It is done when the application's styling is implemented using the Bootstrap CSS framework.

4. Ensure interactivity, accepting and responding to user input.

  • It is done when the application actively engages with users, accepting and responding to their input.

5. Avoid using alerts, confirms, or prompts; use modals instead.

  • It is done when the application utilises modal dialogs for user interactions instead of traditional alerts, confirms, or prompts.

6. Ensure responsiveness and a polished UI.

  • It is done when the application's user interface is visually appealing, polished, and responsive across different devices and screen sizes.

7. Implement client-side storage for persistent data.

  • It is done when the application uses client-side storage (e.g., localStorage) to store and retrieve persistent data.

8. Deploy the application to GitHub Pages.

  • It is done when the application is successfully deployed and accessible on GitHub Pages.

9. Adhere to best practices for file structure, naming conventions, class/id naming, indentation, and comments.

  • It is done when the codebase follows best practices, including well-organised file structure, consistent naming conventions, proper class/id names, clear indentation, and meaningful comments.

Features

  • Cuisine Exploration: Users can browse recipes from various cuisines including Italian, Greek, Spanish, Asian, French, Moroccan, Mexican, and Indian.
  • Recipe Details: Each recipe is accompanied by detailed instructions, ingredients lists, and nutritional information.
  • User Interaction: Features include user registration, sign-in functionality, recipe saving, and email subscription for updates.
  • Responsive Design: The website is fully responsive, ensuring a seamless experience across various devices and screen sizes.

Future Feature Implementations

  • We would like to add a feature that allows users to create their own profile were they can upload their own recipes in a Discover My Recipes section which other account holders can browse through and attempt to cook themselves.

Challenges We Faced

  • One of the challenges we faced during our research phase were not being able to source the specific APIs required for our original concept, which was providing recipes on different time constraints such as 15, 30 and 60 minutes. We resolved this issue by pivoting to sourcing recipes based on different cuisines.

  • Other challenges we faced where not having enough API calls per day to keep the site from function as it should without purchasing a subscription. We resolved this issue by peers opening multiple accounts and swapping their API keys once current had hit its daily limit.

Resources

Icons

JavaScript

Bootstrap

APIs

YouTube Tutorials

Technologies Used

  • Front-end: HTML, CSS, Bootstrap 5, Javascript
  • APIs: EmailJS, FoodWithImagesAPI, NutritionAPI
  • Additional Libraries and Tools: Font Awesome for icons, Bootstrap

Credits

  • Mentorship and Guidance: [Jung and TA's]
  • Design and Development: [group-7]

Contributors

  • Josh
  • Clemens
  • Leanne
  • Husniye
  • Annie

Webpage Screenshot

Darkmode LightMode

Setup

To run this project locally, follow these steps:

  1. Clone the repository to your local machine.
  2. Open the index.html file in a web browser to view the website.
  3. [Include any additional steps if necessary, like setting up a local server or environment variables.]

Webpage Link

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published