• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Kitchen Story Daily

  • Recipe Index
  • Budget
  • Cheat Meal
  • Healthy
  • Keto
  • Quick
  • Vegan
  • About

Kitchen Story Daily

  • Recipe Index
  • Budget
  • Cheat Meal
  • Healthy
  • Keto
  • Quick
  • Vegan
  • About
Healthy / Dessert / Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals

Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals

May 15, 2026 by Kaitlyn

Jump to Recipe·Print Recipe

If you’re looking for a delightful way to impress your friends at your next gathering, the Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals is just the ticket! This vibrant spread of dips and fresh veggies not only looks stunning but also brings together a medley of flavors that are sure to satisfy. It’s perfect for busy weeknights, family gatherings, or casual get-togethers, making it a versatile favorite in my kitchen.

Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals image 2

What I love most about this recipe is how simple it is to put together while still feeling special. Everyone can dive in and share, creating an inviting atmosphere that encourages conversation and joy around the table. Plus, it’s packed with wholesome ingredients that make you feel good about indulging!

Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals image 3
Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals image 4

Why You’ll Love This Recipe

  • Quick to prepare: With just 15 minutes of prep time, you can whip up this platter in no time!
  • Family-friendly: Kids and adults alike will enjoy choosing their favorites and mixing flavors.
  • Make-ahead convenience: Prep the dips and chop the veggies ahead of time for an effortless serving experience.
  • Visually stunning: The colorful array of ingredients makes for an eye-catching centerpiece.
  • Healthy and delicious: Packed with fresh vegetables and wholesome flavors, it’s a guilt-free treat!

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

Ingredients You’ll Need

Gathering simple, wholesome ingredients for this Mediterranean Mezze Tapas Platter is part of the fun! You’ll find everything you need at your local grocery store, making this recipe not only delicious but also accessible.

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

For the Dips

  • 1/2 cup hummus
  • 1/2 cup tzatziki sauce

For the Platter

  • 1/2 cup roasted red peppers, sliced
  • 1/2 cup marinated artichoke hearts
  • 1/4 cup Kalamata olives
  • 1/4 cup feta cheese, crumbled
  • 1 cup cucumber slices
  • 1 cup cherry tomatoes

For Serving

  • 4 whole wheat pita breads, cut into wedges
  • 2 tbsp extra virgin olive oil
  • Fresh parsley, chopped, for garnish

Variations

One of the best parts about this Mediterranean Mezze Tapas Platter is its flexibility! Feel free to mix things up based on your personal preferences or what you have on hand.

  • Add more protein: Incorporate chickpeas or grilled chicken pieces for a heartier platter.
  • Go vegan: Substitute dairy feta with a plant-based cheese option or skip it altogether!
  • Spice it up: Add some spicy roasted chickpeas or jalapeño slices for those who enjoy a kick.
  • Seasonal twist: Use seasonal veggies like bell peppers or radishes to keep things fresh year-round.

How to Make Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals

Step 1: Warm the Pita

Preheat your oven to 350°F (175°C) and place the pita wedges on a baking tray. Warming them for just 5 minutes will give them a lovely softness that’s perfect for dipping. It also adds a comforting touch that everyone will appreciate!

Step 2: Prepare the Dips

While the pita warms up, take two small serving bowls and fill one with hummus and the other with tzatziki sauce. These creamy dips serve as a delicious base for all those fresh veggies you’ll be adding shortly.

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

Step 3: Arrange Your Ingredients

Now comes the fun part! On a large platter, arrange your roasted peppers, marinated artichokes, olives, feta cheese, cucumber slices, and cherry tomatoes around your dips. Be creative with your layout; this is all about making it look inviting and appetizing!

Step 4: Drizzle and Garnish

Finish off by drizzling extra virgin olive oil over the entire platter — it adds a lovely richness! Sprinkle fresh parsley on top as a final touch; not only does it look beautiful, but it also enhances those Mediterranean flavors.

Step 5: Serve Immediately

Once everything is beautifully arranged on your platter, serve it right away with those warm pita wedges. Watching everyone gather around this colorful spread is sure to bring smiles all around!

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

Pro Tips for Making Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals

Creating an impressive Mediterranean Mezze Tapas Platter is a breeze with these helpful tips!

  • Prep Ahead: Assemble all the components in advance and store them in the refrigerator. This saves time and allows flavors to meld together.

  • Choose Quality Ingredients: Opt for fresh vegetables and high-quality olives and cheeses. The better the ingredients, the more delicious your platter will be!

    REMEMBER

    WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

    PIN
  • Vary Textures: Include a mix of creamy, crunchy, and tangy elements. This variety keeps everyone engaged and makes each bite exciting.

  • Use Colorful Produce: Incorporate a rainbow of fruits and veggies to make your platter visually appealing. A colorful display is not only eye-catching but also indicates a range of flavors.

  • Offer Variety in Dips: While hummus and tzatziki are classics, consider adding a spicy harissa or an olive tapenade for those who enjoy different tastes.

    REMEMBER

    WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

    PIN

How to Serve Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals

Presenting your Mediterranean Mezze Tapas Platter beautifully can enhance the dining experience, making it even more inviting for your guests.

Garnishes

  • Fresh Herbs: Sprinkle chopped mint or dill over the platter for added freshness and color.
  • Lemon Wedges: Place lemon wedges on the side. They add a zesty touch when squeezed over the dips or veggies.

Side Dishes

  • Stuffed Grape Leaves: These savory bites filled with rice and herbs complement the platter perfectly, adding an additional layer of flavor.
  • Tabbouleh Salad: A refreshing salad made with parsley, tomatoes, and bulgur wheat adds a bright note that pairs well with the creamy dips.
  • Roasted Chickpeas: Crunchy roasted chickpeas bring a delightful texture contrast and are packed with protein.
  • Falafel: Crispy falafel balls can be served on the side for an extra indulgent treat that fits seamlessly with Mediterranean flavors.

Make Ahead and Storage

Preparing the Mediterranean Mezze Tapas Platter is perfect for meal prep, allowing you to enjoy this delicious appetizer at your convenience. Here’s how to store leftovers and keep everything fresh!

Storing Leftovers

  • Store any leftover dips, veggies, and pita in airtight containers in the refrigerator.
  • Consume leftovers within 3-4 days for the best flavor and quality.
  • Keep dips separate from the veggies to maintain their texture.

Freezing

  • Hummus and tzatziki can be frozen in airtight containers for up to 2 months.
  • For best results, freeze in smaller portions to thaw only what you need.
  • Vegetables are best enjoyed fresh; avoid freezing them as they may lose their crunch.

Reheating

  • Gently reheat pita wedges in the oven at 350°F (175°C) for about 5 minutes until warm and crispy.
  • Thaw frozen hummus or tzatziki in the refrigerator overnight before enjoying.

FAQs

Here are some common questions about the Mediterranean Mezze Tapas Platter:

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

Can I make Mediterranean Mezze Tapas Platter ahead of time?

Absolutely! You can prepare all components a day in advance. Just store them separately and assemble right before serving for a fresh look.

What can I substitute for feta cheese in the Mediterranean Mezze Tapas Platter?

For a dairy-free option, try crumbled tofu or a vegan feta alternative made from nuts, which will add a similar texture without dairy.

How should I serve the Mediterranean Mezze Tapas Platter?

Serve it on a large board or platter with dips in small bowls surrounded by colorful veggies, olives, and pita for an inviting display.

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

What other items can I add to my Mediterranean Mezze Tapas Platter?

Feel free to include items like roasted eggplant, grape leaves, or stuffed peppers for extra variety and flavor.

Is the Mediterranean Mezze Tapas Platter suitable for vegan diets?

Yes! Simply omit feta cheese or replace it with a vegan alternative to keep this dish fully plant-based.

Final Thoughts

The Mediterranean Mezze Tapas Platter is not just an appetizer; it’s an experience that brings friends and family together around a vibrant spread of flavors. I hope you enjoy making this delightful dish as much as I do! Try it out at your next gathering, and watch everyone rave about it. Happy cooking!

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

Print

Mediterranean Mezze Tapas Platter – Easy Shareable Appetizer for Parties & Light Meals

Print Recipe

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

Elevate your next gathering with a Mediterranean Mezze Tapas Platter – an easy and shareable appetizer that’s perfect for parties and light meals. This vibrant spread showcases a delightful combination of creamy dips, fresh veggies, and savory bites that not only looks stunning but also entices the palate with Mediterranean flavors. Simple to prepare in just 15 minutes, this dish encourages socializing as guests enjoy selecting their favorites. Ideal for busy weeknights or casual get-togethers, it’s a versatile addition to any table. Packed with wholesome ingredients, this mezze platter is not just delicious; it’s a guilt-free indulgence you’ll feel good about serving.

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN
  • Author: Kaitlyn
  • Prep Time: 15 minutes
  • Cook Time: 5 minutes
  • Total Time: 20 minutes
  • Yield: Approximately 6 servings 1x
  • Category: Appetizer
  • Method: Baking
  • Cuisine: Mediterranean

Ingredients


Scale
  • 1/2 cup hummus
  • 1/2 cup tzatziki sauce (dairy-free option available)
  • 1/2 cup roasted red peppers, sliced
  • 1/2 cup marinated artichoke hearts
  • 1/4 cup Kalamata olives
  • 1 cup cucumber slices
  • 1 cup cherry tomatoes
  • 4 whole wheat pita breads, cut into wedges
  • 2 tbsp extra virgin olive oil
  • Fresh parsley, chopped, for garnish


Instructions

  1. Preheat the oven to 350°F (175°C) and warm the pita wedges on a baking tray for about 5 minutes until soft.
  2. Fill two small bowls with hummus and tzatziki sauce.
  3. On a large platter, arrange the roasted peppers, marinated artichokes, olives, cucumber slices, cherry tomatoes, and dips creatively.
  4. Drizzle olive oil over the platter and garnish with fresh parsley.
  5. Serve immediately with warm pita wedges.

Nutrition

  • Serving Size: About 260g
  • Calories: 320
  • Sugar: 6g
  • Sodium: 600mg
  • Fat: 15g
  • Saturated Fat: 2g
  • Unsaturated Fat: 12g
  • Trans Fat: 0g
  • Carbohydrates: 40g
  • Fiber: 9g
  • Protein: 10g
  • Cholesterol: 0mg

Did you make this recipe?

Share a photo and tag us — we can’t wait to see what you’ve made!

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

window.trCommon={“minRating”:6,”ajaxurl”:”https:\/\/www.kitchenstorydaily.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:”a9a2eaa5f0″,”postId”:7716};
window.TastyRecipes = window.TastyRecipes || {};

window.TastyRecipes.smoothScroll = {
init() {
document.addEventListener( ‘click’, ( e ) => {
let anchor = e.target;
if ( anchor.tagName !== ‘A’ ) {
anchor = anchor.closest( ‘a.tasty-recipes-scrollto’ );
}

if ( ! anchor || ! anchor.classList.contains( ‘tasty-recipes-scrollto’ ) ) {
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const elementHref = anchor.getAttribute( ‘href’ );
if ( ! elementHref ) {
return;
}

e.preventDefault();
this.goToSelector( elementHref );
});
},
goToSelector( selector ) {
const element = document.querySelector( selector );
if ( ! element ) {
return;
}
element.scrollIntoView( { behavior: ‘smooth’ } );
}
};

document.addEventListener(
‘DOMContentLoaded’,
() => window.TastyRecipes.smoothScroll.init()
);

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

(function(){

var bothEquals = function( d1, d2, D ) {
var ret = 0;
if (d1<=D) {
ret++;
}
if (d2<=D) {
ret++;
}
return ret === 2;
};

var frac =function frac(x,D,mixed){var n1=Math.floor(x),d1=1;var n2=n1+1,d2=1;if(x!==n1){while(bothEquals(d1,d2,D)){var m=(n1+n2)/(d1+d2);if(x===m){if(d1+d2d2){d2=D+1;}else {d1=D+1;}break}else if(xD){d1=d2;n1=n2}if(!mixed){return[0,n1,d1];}var q=Math.floor(n1/d1);return[q,n1-q*d1,d1]};frac.cont=function cont(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1<D){A=Math.floor(B);P=A*P_1+P_2;Q=A*Q_1+Q_2;if(B-AD){if(Q_1>D){Q=Q_2;P=P_2}else{Q=Q_1;P=P_1}}if(!mixed){return[0,sgn*P,Q];}var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]};

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

window.tastyRecipesVulgarFractions = JSON.parse(decodeURIComponent(“%7B%22%C2%BC%22%3A%221%2F4%22%2C%22%C2%BD%22%3A%221%2F2%22%2C%22%C2%BE%22%3A%223%2F4%22%2C%22%E2%85%93%22%3A%221%2F3%22%2C%22%E2%85%94%22%3A%222%2F3%22%2C%22%E2%85%95%22%3A%221%2F5%22%2C%22%E2%85%96%22%3A%222%2F5%22%2C%22%E2%85%97%22%3A%223%2F5%22%2C%22%E2%85%98%22%3A%224%2F5%22%2C%22%E2%85%99%22%3A%221%2F6%22%2C%22%E2%85%9A%22%3A%225%2F6%22%2C%22%E2%85%9B%22%3A%221%2F8%22%2C%22%E2%85%9C%22%3A%223%2F8%22%2C%22%E2%85%9D%22%3A%225%2F8%22%2C%22%E2%85%9E%22%3A%227%2F8%22%7D”));

window.tastyRecipesFormatAmount = function(amount, el) {
if ( parseFloat( amount ) === parseInt( amount ) ) {
return amount;
}
var roundType = ‘frac’;
if (typeof el.dataset.amountShouldRound !== ‘undefined’) {
if (‘false’ !== el.dataset.amountShouldRound) {
if ( ‘number’ === el.dataset.amountShouldRound ) {
roundType = ‘number’;
} else if (‘frac’ === el.dataset.amountShouldRound) {
roundType = ‘frac’;
} else if (‘vulgar’ === el.dataset.amountShouldRound) {
roundType = ‘vulgar’;
} else {
roundType = ‘integer’;
}
}
}
if (‘number’ === roundType) {
amount = Number.parseFloat(amount).toPrecision(2);
} else if (‘integer’ === roundType) {
amount = Math.round(amount);
} else if (‘frac’ === roundType || ‘vulgar’ === roundType) {
var denom = 8;
if (typeof el.dataset.unit !== ‘undefined’) {
var unit = el.dataset.unit;
if ([‘cups’,’cup’,’c’].includes(unit)) {
denom = 4;
if (0.125 === amount) {
denom = 8;
}
if (“0.1667″ === Number.parseFloat( amount ).toPrecision(4)) {
denom = 6;
}
}
if ([‘tablespoons’,’tablespoon’,’tbsp’].includes(unit)) {
denom = 2;
}
if ([‘teaspoons’,’teaspoon’,’tsp’].includes(unit)) {
denom = 8;
}
}
var amountArray = frac.cont( amount, denom, true );
var newAmount = ”;
if ( amountArray[1] !== 0 ) {
newAmount = amountArray[1] + ‘/’ + amountArray[2];
if (‘vulgar’ === roundType) {
Object.keys(window.tastyRecipesVulgarFractions).forEach(function(vulgar) {
if (newAmount === window.tastyRecipesVulgarFractions[vulgar]) {
newAmount = vulgar;
}
});
}
}
if ( newAmount ) {
newAmount = ‘ ‘ + newAmount;
}
if ( amountArray[0] ) {
newAmount = amountArray[0] + newAmount;
}
amount = newAmount;
}
return amount;
};

window.tastyRecipesUpdatePrintLink = () => {

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const printButton = document.querySelector( ‘.tasty-recipes-print-button’ );

if ( ! printButton ) {
return;
}

const printURL = new URL( printButton.href );
const searchParams = new URLSearchParams( printURL.search );

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const unitButton = document.querySelector( ‘.tasty-recipes-convert-button-active’ );
const scaleButton = document.querySelector( ‘.tasty-recipes-scale-button-active’ );

let unit = ”;
let scale = ”;

if ( unitButton ) {
unit = unitButton.dataset.unitType;
searchParams.delete(‘unit’);
searchParams.set( ‘unit’, unit );
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

if ( scaleButton ) {
scale = scaleButton.dataset.amount;
searchParams.set( ‘scale’, scale );
}

const paramString = searchParams.toString();
const newURL = ” === paramString ? printURL.href : printURL.origin + printURL.pathname + ‘?’ + paramString;
const printLinks = document.querySelectorAll( ‘.tasty-recipes-print-link’ );

printLinks.forEach( ( el ) => {
el.href = newURL;
});

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const printButtons = document.querySelectorAll( ‘.tasty-recipes-print-button’ );
printButtons.forEach( ( el ) => {
el.href = newURL;
});
};

document.addEventListener( ‘DOMContentLoaded’, () => {

if ( ! window.location.href.includes( ‘/print/’ ) ) {
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const searchParams = new URLSearchParams( window.location.search );

const unit = searchParams.get( ‘unit’ );
const scale = searchParams.get( ‘scale’ );

if ( unit && ( ‘metric’ === unit || ‘usc’ === unit ) ) {
document.querySelector( ‘.tasty-recipes-convert-button[data-unit-type=”‘ + unit + ‘”]’ ).click();
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

if ( scale && Number(scale) > 0 ) {
document.querySelector( ‘.tasty-recipes-scale-button[data-amount=”‘ + Number(scale) + ‘”]’ ).click();
}
});
}());

(function(){
var buttonClass = ‘tasty-recipes-scale-button’,
buttonActiveClass = ‘tasty-recipes-scale-button-active’,
buttons = document.querySelectorAll(‘.tasty-recipes-scale-button’);
if ( ! buttons ) {
return;
}

buttons.forEach(function(button){
button.addEventListener(‘click’, function(event){
event.preventDefault();
var recipe = event.target.closest(‘.tasty-recipes’);
if ( ! recipe ) {
return;
}
var otherButtons = recipe.querySelectorAll(‘.’ + buttonClass);
otherButtons.forEach(function(bt){
bt.classList.remove(buttonActiveClass);
});
button.classList.add(buttonActiveClass);

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

var scalables = recipe.querySelectorAll(‘span[data-amount]’);
var buttonAmount = parseFloat( button.dataset.amount );
scalables.forEach(function(scalable){
if (typeof scalable.dataset.amountOriginalType === ‘undefined’
&& typeof scalable.dataset.nfOriginal === ‘undefined’) {
if (-1 !== scalable.innerText.indexOf(‘/’)) {
scalable.dataset.amountOriginalType = ‘frac’;
}
if (-1 !== scalable.innerText.indexOf(‘.’)) {
scalable.dataset.amountOriginalType = ‘number’;
}
Object.keys(window.tastyRecipesVulgarFractions).forEach(function(vulgar) {
if (-1 !== scalable.innerText.indexOf(vulgar)) {
scalable.dataset.amountOriginalType = ‘vulgar’;
}
});
if (typeof scalable.dataset.amountOriginalType !== ‘undefined’) {
scalable.dataset.amountShouldRound = scalable.dataset.amountOriginalType;
}
}
var amount = parseFloat( scalable.dataset.amount ) * buttonAmount;
amount = window.tastyRecipesFormatAmount(amount, scalable);
if ( typeof scalable.dataset.unit !== ‘undefined’ ) {
if ( ! scalable.classList.contains(‘nutrifox-quantity’) ) {
if ( ! scalable.classList.contains(‘nutrifox-second-quantity’) ) {
amount += ‘ ‘ + scalable.dataset.unit;
}
}
}
scalable.innerText = amount;
});

var nonNumerics = recipe.querySelectorAll(‘[data-has-non-numeric-amount]’);
nonNumerics.forEach(function(nonNumeric){
var indicator = nonNumeric.querySelector(‘span[data-non-numeric-label]’);
if ( indicator ) {
nonNumeric.removeChild(indicator);
}
if ( 1 !== buttonAmount ) {
indicator = document.createElement(‘span’);
indicator.setAttribute(‘data-non-numeric-label’, true);
var text = document.createTextNode(‘ (x’ + buttonAmount + ‘)’);
indicator.appendChild(text);
nonNumeric.appendChild(indicator);
}
});

window.tastyRecipesUpdatePrintLink();
});
});
}());

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.cookMode = {
wakeLockApi: false,
wakeLock: false,
cookModeSelector: ‘.tasty-recipes-cook-mode’,
init() {
if (“wakeLock” in navigator && “request” in navigator.wakeLock) {
this.wakeLockApi = navigator.wakeLock;
}

const cookModes = document.querySelectorAll(this.cookModeSelector);

if (cookModes.length > 0) {
for (const cookMode of cookModes) {
if (this.wakeLockApi) {
cookMode.querySelector(‘input[type=”checkbox”]’).addEventListener(“change”, event => {
this.checkboxChange(event.target);
}, false);
} else {
cookMode.style.display = “none”;
}
}
}
},
checkboxChange(checkbox) {
if (checkbox.checked) {
this.lock();
} else {
this.unlock();
}
},
setCheckboxesState(state) {
const checkboxes = document.querySelectorAll(this.cookModeSelector + ‘ input[type=”checkbox”]’);
for (const checkbox of checkboxes) {
checkbox.checked = state;
}
},
async lock() {
try {
this.wakeLock = await this.wakeLockApi.request(“screen”);
this.wakeLock.addEventListener(“release”, () => {
this.wakeLock = false;
this.setCheckboxesState(false);
});
this.setCheckboxesState(true);
} catch (error) {
this.setCheckboxesState(false);
}
},
unlock() {
if (this.wakeLock) {
this.wakeLock.release();
this.wakeLock = false;
}
this.setCheckboxesState(false);
}
};

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
document.addEventListener(“DOMContentLoaded”, callback);
}
})(() => {
window.TastyRecipes.cookMode.init();
});

window.TastyRecipes = window.TastyRecipes || {};

window.TastyRecipes.staticTooltip = {
element: null,
tooltipElement: null,
deleting: false,
init( element ) {
if ( this.deleting ) {
return;
}
this.element = element;
this.buildElements();
},
destroy() {
if ( ! this.tooltipElement || this.deleting ) {
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

this.deleting = true;
this.tooltipElement.classList.remove( ‘opened’ );

setTimeout( () => {
this.tooltipElement.remove();
this.deleting = false;
}, 500 );
},
buildElements() {
const tooltipElement = document.createElement( ‘div’ );
tooltipElement.classList.add( ‘tasty-recipes-static-tooltip’);
tooltipElement.setAttribute( ‘id’, ‘tasty-recipes-tooltip’ );

const currentTooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
if ( currentTooltipElement ) {
document.body.replaceChild( tooltipElement, currentTooltipElement );
} else {
document.body.appendChild( tooltipElement );
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

this.tooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
},
show() {
if ( ! this.tooltipElement ) {
return;
}

const tooltipTop = this.element.getBoundingClientRect().top
+ window.scrollY
– 10 // 10px offset.
– this.tooltipElement.getBoundingClientRect().height;
const tooltipLeft = this.element.getBoundingClientRect().left
– ( this.tooltipElement.getBoundingClientRect().width / 2 )
+ ( this.element.getBoundingClientRect().width / 2 ) – 1;
const posLeft = Math.max( 10, tooltipLeft );
this.maybeRemoveTail( posLeft !== tooltipLeft );

this.tooltipElement.setAttribute( ‘style’, ‘top:’ + tooltipTop + ‘px;left:’ + posLeft + ‘px;’ );
this.tooltipElement.classList.add( ‘opened’ );

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

},
maybeRemoveTail( removeTail ) {
if ( removeTail ) {
this.tooltipElement.classList.add( ‘tr-hide-tail’ );
} else {
this.tooltipElement.classList.remove( ‘tr-hide-tail’ );
}
},
changeMessage( message ) {
if ( ! this.tooltipElement ) {
return;
}
this.tooltipElement.innerHTML = message;
}
};

window.TastyRecipes.ajax = {
sendPostRequest( url, data, success, failure ) {
const xhr = new XMLHttpRequest();
xhr.open( ‘POST’, url, true );
xhr.send( this.preparePostData( data ) );

xhr.onreadystatechange = () => {
if ( 4 !== xhr.readyState ) {
return;
}
if ( xhr.status === 200 ) {
success( JSON.parse( xhr.responseText ) );
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

failure( xhr );
};

xhr.onerror = () => {
failure( xhr );
};
},
preparePostData( data ) {
const formData = new FormData();

for ( const key in data ) {
formData.append( key, data[key] );
}
return formData;
},
};

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

window.TastyRecipes.ratings = {
defaultRating: 0,
currentRatingPercentage: 100,
savingRating: false,
init( minRating ) {
this.minRating = minRating;

this.formWatchRating();
this.closeTooltipWhenClickOutside();
this.addBodyClassBasedOnSelectedRating();
this.backwardCompFormRatingPosition();
},
formWatchRating() {
const ratings = document.querySelectorAll(‘.tasty-recipes-no-ratings-buttons [data-rating]’);
if ( ratings.length {
event.preventDefault();
this.defaultRating = event.target.closest( ‘.checked’ ).dataset.rating;
this.setCheckedStar( event.target );
this.maybeSendRating( this.defaultRating, event.target );
this.setRatingInForm( this.defaultRating );
} );
}
},
closeTooltipWhenClickOutside() {
window.addEventListener( ‘click’, e => {
// Bailout (don’t remove the tooltip) when the clicked element is a rating star, or it’s the tooltip itself.
if ( e.target.closest( ‘.tasty-recipes-rating’ ) || e.target.classList.contains( ‘tasty-recipes-static-tooltip’ ) ) {
return;
}

window.TastyRecipes.staticTooltip.destroy();
} );
},
setRatingInForm( rating ) {
const ratingInput = document.querySelector( ‘#respond .tasty-recipes-rating[value=”‘ + rating + ‘”]’ );
if ( ! ratingInput ) {
return;
}
ratingInput.click();
},
addBodyClassBasedOnSelectedRating() {
const ratingInputs = document.querySelectorAll( ‘input.tasty-recipes-rating’ );
if ( ! ratingInputs ) {
return;
}
for ( const ratingInput of ratingInputs ) {
ratingInput.addEventListener( ‘click’, currentEvent => {
const selectedRating = currentEvent.target.getAttribute( ‘value’ );
this.handleBodyClassByRating( selectedRating );
this.toggleCommentTextareaRequired( selectedRating );
} );
}
},
handleBodyClassByRating( rating ) {
if ( rating < this.minRating ) {
document.body.classList.remove( 'tasty-recipes-selected-minimum-rating' );
return;
}
document.body.classList.add( 'tasty-recipes-selected-minimum-rating' );
},
toggleCommentTextareaRequired( rating ) {
const commentTextarea = document.getElementById( 'comment' );
if ( ! commentTextarea ) {
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

if ( rating {
window.TastyRecipes.staticTooltip.changeMessage( response.data.message );
window.TastyRecipes.staticTooltip.show();
this.updateAverageText( response.data, recipeCardElement );
this.maybeFillCommentForm( response.data );

// Hide the tooltip after 5 seconds.
setTimeout( () => {
this.maybeResetTooltip( recipeCardElement, response.data, rating );
}, 5000 );
},
() => {
this.resetTooltip( recipeCardElement );
}
);
},
updateAverageText( data, recipeCardElement ) {
if ( ! data.average ) {
return;
}
this.setRatingPercent( data );

if ( ! data.count ) {
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const quickLink = document.querySelector( ‘.tasty-recipes-rating-link’ );
if ( quickLink ) {
this.setTextInContainer( quickLink, data );
this.setPartialStar( quickLink );
}

const cardStars = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
cardStars.dataset.trDefaultRating = data.average;
this.setTextInContainer( recipeCardElement.querySelector( ‘.tasty-recipes-rating’ ), data );
},
setTextInContainer( container, data ) {
if ( ! container ) {
return;
}

if ( data.label ) {
const ratingLabelElement = container.querySelector( ‘.rating-label’ );
if ( ratingLabelElement ) {
ratingLabelElement.innerHTML = data.label;
}
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const averageElement = container.querySelector( ‘.average’ );
if ( averageElement ) {
averageElement.textContent = data.average;
}

const countElement = container.querySelector( ‘.count’ );
if ( countElement ) {
countElement.textContent = data.count;
}
},
setPartialStar( container ) {
const highestStar = container.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( highestStar ) {
highestStar.dataset.trClip = this.currentRatingPercentage;
}
},
setRatingPercent( data ) {
this.defaultRating = data.average.toFixed( 1 );
const parts = data.average.toFixed( 2 ).toString().split( ‘.’ );
this.currentRatingPercentage = parts[1] ? parts[1] : 100;
if ( this.currentRatingPercentage === ’00’ ) {
this.currentRatingPercentage = 100;
}
},
setCheckedStar( target ) {
const cardRatingContainer = target.closest( ‘.tasty-recipes-ratings-buttons’ );
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( selectedRatingElement ) {
delete selectedRatingElement.dataset.trChecked;
}

const thisStar = target.closest( ‘.tasty-recipes-rating’ );
thisStar.dataset.trChecked = 1;
thisStar.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = 100;
},
maybeFillCommentForm( data ) {
if ( ! data.comment || ! data.comment.content ) {
return;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

const commentForm = document.querySelector( ‘#commentform’ );
if ( ! commentForm ) {
return;
}

const commentBox = commentForm.querySelector( ‘[name=comment]’ );
if ( ! commentBox || commentBox.value ) {
return;
}

// Add comment details for editing.
commentBox.innerHTML = data.comment.content;
if ( data.comment.name ) {
commentForm.querySelector( ‘[name=author]’ ).value = data.comment.name;
commentForm.querySelector( ‘[name=email]’ ).value = data.comment.email;
}
},
maybeResetTooltip( recipeCardElement, data, rating ) {
if ( this.savingRating === rating ) {
this.resetTooltip( recipeCardElement, data );
}
},
resetTooltip( recipeCardElement, data ) {
window.TastyRecipes.staticTooltip.destroy();
this.savingRating = false;

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

// Reset the default rating.
const cardRatingContainer = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
if ( cardRatingContainer ) {
this.defaultRating = ( data && data.average ) ? data.average.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;
cardRatingContainer.dataset.trDefaultRating = this.defaultRating;

this.resetSelectedStar( cardRatingContainer, data );
}
},
resetSelectedStar( cardRatingContainer ) {
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( selectedRatingElement ) {
selectedRatingElement.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = this.currentRatingPercentage;
selectedRatingElement.parentNode.dataset.trChecked = 1;
}

const previousSelectedElement= cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( previousSelectedElement ) {
const currentSelectedRating = previousSelectedElement.querySelector(‘[data-rating]’);
if ( currentSelectedRating !== selectedRatingElement ) {
delete previousSelectedElement.dataset.trChecked;
}
}
},
backwardCompFormRatingPosition() {
const ratingsButtons = document.querySelector( ‘#respond .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons’ );
if ( ! ratingsButtons ) {
return;
}
const ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);
if ( ! ratingsButtonsStyles.display.includes( ‘flex’ ) ) {
ratingsButtons.style.direction = ‘rtl’;
}

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

if ( typeof tastyRecipesRating !== ‘undefined’ ) {
// Select the rating that was previously selected in admin.
ratingsButtons.querySelector( ‘.tasty-recipes-rating[value=”‘ + tastyRecipesRating + ‘”]’ ).checked = true;
}

const ratingSpans = ratingsButtons.querySelectorAll( ‘.tasty-recipes-rating’ );
for (const ratingSpan of ratingSpans) {
ratingSpan.addEventListener( ‘click’, event => {
if ( ratingSpan === event.target ) {
return;
}
ratingSpan.previousElementSibling.click();
} );
}
}
};

(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
window.addEventListener( ‘load’, callback );
}
})(() => {
window.TastyRecipes.ratings.init( window.trCommon ? window.trCommon.minRating : 4 );
});

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

REMEMBER

WANT TO SAVE THIS RECIPE? CLICK BELOW AND PIN IT

PIN

« Previous Post
Fresh Mixed Greens Side Salad (for Steak, Pasta, & More!)
Next Post »
Steak Bites with Sweet Potatoes: An Incredible Ultimate Recipe

If you enjoyed this…

Healthy Broccoli Cheddar Soup

Healthy Broccoli Cheddar Soup

Mediterranean Pasta Salad (20-Minutes)

Mediterranean Pasta Salad (20-Minutes)

Delicious Baked Honey BBQ Popcorn Chicken Recipe

Delicious Baked Honey BBQ Popcorn Chicken Recipe

Reader Interactions

Leave a Comment Cancel reply

Helpful comments include feedback on the post or changes you made.

Recipe rating 5 Stars 4 Stars 3 Stars 2 Stars 1 Star

Primary Sidebar

Browse by Diet

HealthyBudgetKetoQuickVeganCheat Meal
Bourbon Peach Roasted Salmon

Bourbon Peach Roasted Salmon

Corn Salad

Corn Salad

Cuban Mojo Chicken Thighs: An Amazing Ultimate Recipe

Cuban Mojo Chicken Thighs: An Amazing Ultimate Recipe

  • Disclaimer
  • Terms and Conditions
  • Privacy Policy
  • Contact
  • About

© 2026 · © Kitchen Story Daily · All Rights Reserved · Created by Kaitlyn ·