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

Quick Daily Dish

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

Quick Daily Dish

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

Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe

Jump to Recipe·Print Recipe

If you’re looking for a cozy meal that brings everyone together, you’ve stumbled upon the right recipe! Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe is not only scrumptious but also incredibly easy to whip up. This dish has become a staple in my kitchen, especially on busy weeknights when I want something comforting yet satisfying. The rich buttery garlic flavor combined with tender chicken and creamy pasta makes it a favorite for family gatherings and casual dinners alike.

Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe image 2

Imagine the delight on your loved ones’ faces as you present this vibrant, flavorful dish at the dinner table. Whether it’s a special occasion or just another Tuesday night, this recipe has all the elements of a winning meal!

Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe image 3
Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe image 4

Why You’ll Love This Recipe

  • Quick and Easy Preparation: With just seven steps, you can have a delicious dinner on the table in no time.
  • Family-Friendly Appeal: Kids and adults alike will love the creamy goodness and savory chicken bites.
  • Comfort Food at Its Best: This dish provides warmth and satisfaction, perfect for any occasion.
  • Make-Ahead Convenience: You can prep some components in advance for an even faster meal!
  • Flavorful Ingredients: Simple ingredients come together to create a delightful taste experience.

Ingredients You’ll Need

Gathering ingredients for this dish is a breeze! You’ll find that these simple, wholesome items are likely already in your pantry or fridge. Here’s what you need to make these delightful garlic butter chicken bites served with creamy parmesan pasta:

For the Chicken Bites

  • 1 lb boneless, skinless chicken breasts, cut into bite-sized pieces
  • 4 tablespoons unsalted butter
  • 4 cloves garlic, minced
  • 1 teaspoon Italian seasoning
  • ½ teaspoon red pepper flakes (optional)
  • Salt and pepper, to taste

For the Pasta

  • 8 oz fettuccine or pasta of your choice
  • 1 cup heavy cream
  • 1 cup grated Parmesan cheese
  • Fresh parsley, chopped (for garnish)

Variations

This recipe is wonderfully flexible, allowing you to customize it based on your preferences or dietary needs. Here are some fun variations to try out:

  • Swap the Protein: Feel free to use turkey or chicken thighs instead of breasts for a different texture and flavor.
  • Go Vegan: Substitute chicken with chickpeas or tofu and use plant-based cream and cheese for a delicious vegan twist.
  • Add Veggies: Toss in some spinach, sun-dried tomatoes, or broccoli for extra nutrition and color.
  • Change Up the Pasta: Experiment with whole wheat or gluten-free pasta options that suit your dietary needs.

How to Make Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe

Step 1: Cook the Pasta

Start by boiling a large pot of salted water. Add your fettuccine (or favorite pasta) and cook according to package instructions until al dente. This step is crucial because perfectly cooked pasta will hold onto that creamy sauce beautifully!

Step 2: Prepare Chicken Bites

While your pasta cooks, season those bite-sized chicken pieces with salt, pepper, and Italian seasoning. This seasoning mix adds depth of flavor right from the start!

Step 3: Sauté Chicken

In a large skillet over medium heat, melt 2 tablespoons of butter. Add your seasoned chicken bites and cook until they are golden brown and cooked through—about 5-7 minutes. Removing them from the skillet ensures they don’t overcook while you prepare the sauce.

Step 4: Make Garlic Butter

In the same skillet, toss in the remaining butter along with minced garlic. Sauté for just 1-2 minutes until fragrant but be careful not to burn it; we want that lovely garlic aroma without bitterness!

Step 5: Add Cream

Pour in that luscious heavy cream while bringing it to a gentle simmer. Stir frequently for about three minutes; this helps thicken the sauce slightly while incorporating all those wonderful garlic flavors.

Step 6: Incorporate Cheese

Gradually whisk in grated Parmesan cheese into your cream mixture until it’s melted and smooth. This step is where magic happens; it transforms your sauce into creamy goodness! Season again with salt, pepper, and red pepper flakes if you’d like an extra kick.

Step 7: Combine Everything

Return those golden chicken bites back into the skillet along with your drained pasta. Toss everything together gently until every noodle is coated in that heavenly creamy sauce. It’s time to serve up your creation! Enjoy garnished with fresh parsley for an extra pop of color.

Now you’re ready to share this incredible meal filled with flavor!

Pro Tips for Making Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe

Creating this delicious dish is easy, but these tips will help you elevate your cooking experience!

  • Use Fresh Ingredients: Fresh garlic and high-quality Parmesan cheese make a significant difference in flavor. They enhance the richness of the sauce and the overall taste of your dish.

  • Don’t Overcook the Chicken: Aim for juicy chicken bites that are golden brown on the outside. Overcooking can lead to dryness, so keep an eye on them as they sauté.

  • Reserve Pasta Water: Before draining your pasta, save a cup of pasta water. Adding a splash to your sauce can help achieve the perfect creamy consistency.

  • Adjust Seasoning Gradually: Taste as you go! This allows you to find the perfect balance of flavors, especially when adding salt and pepper.

  • Let it Rest Before Serving: Allowing the dish to sit for a few minutes after cooking helps the flavors meld together, resulting in a more cohesive taste.

How to Serve Garlic Butter Chicken Bites with Creamy Parmesan Pasta: An Incredible 7-Step Recipe

This dish not only tastes wonderful but also looks fantastic on the plate! Here are some ideas to present it beautifully.

Garnishes

  • Fresh Parsley: Chopped fresh parsley adds a pop of color and freshness that brightens up the dish.
  • Extra Parmesan: A sprinkle of grated Parmesan on top right before serving enhances richness and gives a gourmet touch.

Side Dishes

  • Steamed Broccoli: Lightly steamed broccoli offers a nutritious crunch that complements the creamy pasta.
  • Garlic Bread: A classic pairing, garlic bread is perfect for soaking up any leftover sauce.
  • Caesar Salad: The crisp romaine and tangy dressing provide a refreshing contrast to the rich flavors of your main dish.
  • Roasted Vegetables: Seasonal roasted vegetables add depth and color, making your meal more vibrant and appealing.

Make Ahead and Storage

This Garlic Butter Chicken Bites with Creamy Parmesan Pasta recipe is perfect for meal prep, allowing you to enjoy delicious flavors throughout the week.

Storing Leftovers

  • Allow the chicken and pasta to cool completely before storing.
  • Transfer leftovers to an airtight container.
  • Store in the refrigerator for up to 3 days.

Freezing

  • To freeze, place cooled leftovers in a freezer-safe container or bag.
  • Remove as much air as possible to prevent freezer burn.
  • Freeze for up to 2 months.

Reheating

  • Thaw overnight in the refrigerator if frozen.
  • Reheat in a skillet over medium heat, adding a splash of cream or broth to keep it moist.
  • Alternatively, microwave in 30-second intervals until heated through.

FAQs

Can I make Garlic Butter Chicken Bites with Creamy Parmesan Pasta ahead of time?

Yes! You can prepare this dish ahead of time and store it in the fridge or freezer. Follow the storing and reheating guidelines to enjoy it later.

What can I substitute for heavy cream in Garlic Butter Chicken Bites with Creamy Parmesan Pasta?

You can use half-and-half or a dairy-free alternative like coconut cream for a lighter version while still achieving that creamy texture.

How do I know when my chicken is fully cooked?

Make sure the chicken reaches an internal temperature of 165°F (75°C) and is no longer pink in the center. This ensures it’s safe to eat.

Is there a vegetarian option for Garlic Butter Chicken Bites with Creamy Parmesan Pasta?

Absolutely! You can replace the chicken with sautéed mushrooms or tofu, and use vegetable broth instead of heavy cream for a delightful vegetarian variation.

How can I make Garlic Butter Chicken Bites with Creamy Parmesan Pasta spicier?

For an extra kick, increase the amount of red pepper flakes or add diced jalapeños while cooking the chicken.

Final Thoughts

I hope you find joy in creating this comforting dish! The combination of garlic butter chicken bites and creamy parmesan pasta makes every bite feel special. Enjoy making it for yourself or sharing it with loved ones. Happy cooking!

Print

clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon

Garlic Butter Chicken Bites with Creamy Parmesan Pasta

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

Print Recipe

Garlic Butter Chicken Bites with Creamy Parmesan Pasta is the perfect dish for cozy family dinners or quick weeknight meals. This delightful recipe combines tender chicken bites sautéed in rich garlic butter and creamy Parmesan sauce, served over your choice of pasta. With just seven easy steps, you can whip up a comforting meal that pleases both kids and adults alike. The buttery, garlic-infused flavors create a mouthwatering experience that will leave everyone asking for seconds. Plus, it’s customizable—feel free to add vegetables or swap proteins to suit your taste!

  • Total Time:

    30 minutes
  • Yield:

    Serves 4

Ingredients


Scale
  • 1 lb boneless, skinless chicken breasts
  • 4 tablespoons unsalted butter
  • 4 cloves garlic
  • 1 teaspoon Italian seasoning
  • ½ teaspoon red pepper flakes (optional)
  • Salt and pepper, to taste
  • 8 oz fettuccine or pasta of your choice
  • 1 cup heavy cream
  • 1 cup grated Parmesan cheese
  • Fresh parsley, chopped (for garnish)


Instructions

  1. Cook pasta according to package instructions until al dente. Drain and set aside.
  2. Season chicken with salt, pepper, and Italian seasoning.
  3. In a skillet, melt 2 tablespoons of butter over medium heat. Add chicken and cook until golden brown, about 5-7 minutes.
  4. Remove chicken from skillet and set aside.
  5. In the same skillet, add remaining butter and garlic; sauté for 1-2 minutes until fragrant.
  6. Stir in heavy cream and simmer for 3 minutes.
  7. Add Parmesan cheese, stirring until melted and smooth; return chicken and pasta to skillet, tossing gently to coat.
  • Author: Nova
  • Prep Time: 10 minutes
  • Cook Time: 20 minutes
  • Category: Main
  • Method: Sautéing
  • Cuisine: Italian

Nutrition

  • Serving Size: 1 cup (240g)
  • Calories: 610
  • Sugar: 2g
  • Sodium: 850mg
  • Fat: 37g
  • Saturated Fat: 22g
  • Unsaturated Fat: 15g
  • Trans Fat: 0g
  • Carbohydrates: 42g
  • Fiber: 2g
  • Protein: 27g
  • Cholesterol: 115mg

Did you make this recipe?

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

window.trCommon={“minRating”:6,”ajaxurl”:”https:\/\/www.quickdailydish.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:”f924057894″,”postId”:3581};
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;
}

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()
);

(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]};

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 = () => {

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

if ( ! printButton ) {
return;
}

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

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 );
}

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;
});

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

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

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

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();
}

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);

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();
});
});
}());

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);
}
};

(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;
}

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 );
}

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’ );

},
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;
}

failure( xhr );
};

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

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

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;
}

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;
}

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;
}

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;
}

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;

// 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’;
}

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
« Previous Post
The Best Creamy Steak Pasta Alfredo Recipe
Next Post »
Summer Fresh Corn Salad

If you enjoyed this…

Fall Fruit Salad

Fall Fruit Salad

Elote Deviled Eggs: 12 Fiesta Delights

Elote Deviled Eggs: 12 Fiesta Delights

Keto Loaded Philly Cheesesteak Quesadillas

Keto Loaded Philly Cheesesteak Quesadillas

Primary Sidebar

Browse by Diet

HealthyBudgetKetoQuickVeganCheat Meal
Banana Foster Chex Mix

Banana Foster Chex Mix

Steak and Egg Breakfast Burrito

Steak and Egg Breakfast Burrito

20-Minute Chili Lime Flank Steak That Melts Hearts

20-Minute Chili Lime Flank Steak That Melts Hearts

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

© 2026 Quick Daily Dish · All Rights Reserved · Created by Chef Nova Blake · About · Privacy Policy · Terms & Conditions · Disclaimer · Contact