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

Easy Cook Inspo

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

Easy Cook Inspo

  • Home
  • Recipe Index
  • Budget
  • Cheat Meal
  • Healthy
  • Keto
  • Quick
  • Vegan
  • Contact
  • About
Healthy / DINNER / Creamy Chicken Alfredo Pasta

Creamy Chicken Alfredo Pasta

January 8, 2026 by Kaylee

Jump to Recipe·Print Recipe

If you’re looking for a dish that feels like a warm hug on a plate, then you’ve stumbled upon the perfect recipe: Creamy Chicken Alfredo Pasta. This delightful meal is not only rich and satisfying but also incredibly easy to whip up. Whether it’s a busy weeknight or a cozy family gathering, this dish brings everyone together with its comforting flavors.

Creamy Chicken Alfredo Pasta image 2

What makes this recipe special is its simplicity and versatility. With just a handful of ingredients, you can create something truly delicious that feels indulgent without the fuss. Trust me, once you try this Creamy Chicken Alfredo Pasta, it’s going to become a staple in your home!

Creamy Chicken Alfredo Pasta image 3
Creamy Chicken Alfredo Pasta image 4

Why You’ll Love This Recipe

  • Quick and Easy: Perfect for those nights when you need dinner on the table fast!
  • Family-Friendly: Even picky eaters will enjoy this creamy goodness.
  • Make-Ahead Friendly: Cook it in advance and reheat for an effortless meal later.
  • Delicious Flavor: The combination of creamy sauce and tender chicken is simply irresistible.

Ingredients You’ll Need

Let’s gather our simple, wholesome ingredients! Each one contributes to the creamy goodness of this dish, making it not just tasty but also comforting.

For the Pasta:

  • 2 skinless boneless chicken breasts (about 1 lb / 450g)
  • 8 oz (225g) fettuccine pasta

For the Sauce:

  • 2 tablespoons unsalted butter
  • 2 cloves garlic, minced
  • 1 ½ cups heavy cream
  • 1 cup freshly grated Parmesan cheese
  • Salt to taste
  • Pepper to taste

Optional Garnish:

  • Fresh parsley or basil, chopped

Variations

One of the best things about Creamy Chicken Alfredo Pasta is how flexible it is! You can easily adapt it to suit your preferences or what you have on hand.

  • Swap the protein: Try using shrimp or grilled vegetables instead of chicken for a different twist.
  • Add some greens: Toss in spinach or broccoli for added nutrition and color.
  • Make it lighter: Use half-and-half instead of heavy cream for a lighter sauce.
  • Change up the cheese: Experiment with different cheeses like mozzarella or Gruyère for unique flavors.

How to Make Creamy Chicken Alfredo Pasta

Step 1: Cook the Fettuccine

Start by boiling salted water in a large pot. Add your fettuccine pasta and cook according to package instructions until al dente. This step is important as it sets the base for your dish, ensuring that every bite has that perfect texture!

Step 2: Sauté the Chicken

While your pasta cooks, heat butter in a skillet over medium heat. Season your chicken breasts with salt and pepper before adding them to the pan. Cook until golden brown and fully cooked through, about 5-7 minutes per side. This step locks in flavor and keeps your chicken juicy!

Step 3: Make the Alfredo Sauce

In the same skillet, add minced garlic and sauté until fragrant. Then pour in the heavy cream, stirring gently before adding Parmesan cheese. Let it simmer until thickened slightly—this creates that luscious sauce we all love!

Step 4: Combine Everything

Once your pasta is ready, drain it and add it right into your skillet with the sauce. Toss everything together until each piece of pasta is coated in creamy goodness! This step ensures that every bite is packed with flavor.

Step 5: Serve & Enjoy!

Garnish with fresh parsley or basil if desired, then serve immediately while hot. Watching everyone enjoy this Creamy Chicken Alfredo Pasta will be one of the highlights of your meal!

I hope you enjoy making this recipe as much as I do! It’s truly one of those dishes that brings joy to any table.

Pro Tips for Making Creamy Chicken Alfredo Pasta

Making the perfect Creamy Chicken Alfredo Pasta is easy with a few expert tips to elevate your dish!

  • Use fresh ingredients: Fresh garlic and freshly grated Parmesan cheese bring out the best flavors, making your sauce richer and more aromatic.

  • Don’t overcook the chicken: Cook your chicken just until it’s no longer pink in the center. This ensures it remains juicy and tender, adding to the overall creaminess of the dish.

  • Reserve pasta water: Before draining your fettuccine, save a cup of the pasta cooking water. Adding a splash to your sauce can help achieve that silky texture if it becomes too thick.

  • Keep it on low heat: When mixing in the Alfredo sauce with the pasta, use low heat to prevent the cream from curdling. This keeps your sauce smooth and luscious.

  • Customize your flavors: Feel free to add in some sautéed vegetables like spinach or mushrooms for added nutrition and flavor. They blend seamlessly into this creamy classic!

How to Serve Creamy Chicken Alfredo Pasta

When it comes to serving Creamy Chicken Alfredo Pasta, presentation matters! With a few thoughtful touches, you can make this dish truly shine at your dinner table.

Garnishes

  • Freshly chopped parsley: A sprinkle of vibrant green parsley not only adds color but also enhances the freshness of the dish.
  • Cracked black pepper: A dash of freshly cracked black pepper brings a subtle heat that complements the creaminess beautifully.

Side Dishes

  • Garlic Bread: Crunchy and buttery garlic bread is perfect for soaking up all that delicious Alfredo sauce. It’s an irresistible combination!
  • Caesar Salad: Crisp romaine lettuce tossed with a light dressing provides a refreshing contrast to the rich pasta. Add croutons for extra texture!
  • Steamed Broccoli: Bright green steamed broccoli adds a pop of color and nutrients, balancing out the richness of the pasta.
  • Roasted Vegetables: A medley of seasonal roasted vegetables like zucchini and bell peppers complements the dish while adding depth and flavor.

Feel free to mix and match these garnishes and side dishes to create your perfect creamy chicken Alfredo experience! Enjoy every bite of this comforting meal with family or friends.

Make Ahead and Storage

This Creamy Chicken Alfredo Pasta is an excellent choice for meal prep, allowing you to enjoy a delicious dish throughout the week without the hassle of cooking every day. Here’s how to store, freeze, and reheat it properly.

Storing Leftovers

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

Freezing

  • Portion out the pasta into freezer-safe containers or bags.
  • Remove as much air as possible to prevent freezer burn.
  • Label with the date and freeze for up to 2 months.

Reheating

  • Thaw overnight in the refrigerator if frozen.
  • Reheat on the stovetop over low heat, adding a splash of cream or milk to restore creaminess.
  • Heat until warmed through, stirring frequently to avoid sticking.

FAQs

Here are some common questions about making Creamy Chicken Alfredo Pasta.

Can I use a different type of pasta for Creamy Chicken Alfredo Pasta?

Absolutely! While fettuccine is traditional, you can substitute it with penne, linguine, or any pasta shape you prefer. Just adjust the cooking time according to the package instructions.

How can I make my Creamy Chicken Alfredo Pasta healthier?

To lighten up this dish, consider using whole wheat pasta, reducing the amount of butter and cheese, or incorporating vegetables like broccoli or spinach for added nutrition and flavor.

Can I make Creamy Chicken Alfredo Pasta without heavy cream?

Yes! You can substitute heavy cream with half-and-half or a mixture of milk and cornstarch. This will still provide a creamy texture while reducing calories.

What should I serve with my Creamy Chicken Alfredo Pasta?

This dish pairs beautifully with a side salad, garlic bread, or steamed vegetables for a well-rounded meal.

Final Thoughts

I hope you enjoy making this Creamy Chicken Alfredo Pasta as much as I do! It’s not just a recipe; it’s an experience filled with warmth and comfort that brings everyone together around the dinner table. Don’t hesitate to get creative and add your favorite ingredients. 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

Creamy Chicken Alfredo Pasta

5 Stars 4 Stars 3 Stars 2 Stars 1 Star
No reviews


  • Author:
    Kaylee
  • Prep Time: 15 minutes

  • Cook Time: 20 minutes

  • Total Time: 35 minutes

  • Yield: Serves 4

  • Category: Main

  • Method: Sauteing

  • Cuisine: Italian

Print Recipe

Pin Recipe

const share_pin_buttons = document.getElementsByClassName( ‘share-pin button’ );
if ( share_pin_buttons ) {
for ( let share_key = 0; share_key {
e.stopPropagation();
window.open(e.target.dataset.href,’targetWindow’,’toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=500,height=500′);
return false;
} );
}
}


Description

Creamy Chicken Alfredo Pasta is the ultimate comfort food that brings warmth and satisfaction to your table. This delectable dish features tender chicken breasts coated in a rich, creamy Alfredo sauce served over fettuccine pasta. It’s perfect for busy weeknights or cozy family dinners, combining simplicity with indulgence. With just a few key ingredients, you can create a meal that feels special without the hassle. Whether you’re looking to impress guests or simply enjoy a delightful dinner at home, this Creamy Chicken Alfredo Pasta is sure to become a beloved favorite in your household.


Ingredients


Scale

  • 2 skinless boneless chicken breasts (about 1 lb / 450g)
  • 8 oz (225g) fettuccine pasta
  • 2 tablespoons unsalted butter
  • 2 cloves garlic, minced
  • 1 ½ cups heavy cream
  • 1 cup freshly grated Parmesan cheese
  • Salt to taste
  • Pepper to taste


Instructions

  1. Cook the fettuccine in salted boiling water according to package instructions until al dente.
  2. In a skillet, melt butter over medium heat. Season chicken with salt and pepper and cook for 5-7 minutes per side until golden and cooked through.
  3. Add minced garlic to the skillet and sauté until fragrant. Pour in heavy cream and stir before adding Parmesan cheese; let simmer until slightly thickened.
  4. Drain the pasta and toss it with the sauce in the skillet until well-coated.
  5. Serve hot, garnished with fresh parsley or basil if desired.



Nutrition

  • Serving Size: 1 plate (approximately 290g)
  • Calories: 650
  • Sugar: 2g
  • Sodium: 470mg
  • Fat: 34g
  • Saturated Fat: 20g
  • Unsaturated Fat: 10g
  • Trans Fat: 0g
  • Carbohydrates: 66g
  • Fiber: 3g
  • Protein: 28g
  • Cholesterol: 90mg

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.easycookinspo.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:”d6999d9e8c”,”postId”:1019};
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 );
});

« Previous Post
Keto Philly Cheesesteak Foil Packets
Next Post »
Keto Garlic Shrimp au Gratin

If you enjoyed this…

Strawberry Cheesecake Cinnabon Rolls

Strawberry Cheesecake Cinnabon Rolls

Moist Carrot Bundt Cake

Moist Carrot Bundt Cake

Sausage and Veggies Skillet

Sausage and Veggies Skillet

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
Beef and Rotini in Garlic Parmesan Sauce

Beef and Rotini in Garlic Parmesan Sauce

Almond Wedding Cake Cupcakes with Raspberry Filling

Almond Wedding Cake Cupcakes with Raspberry Filling

Feta Watermelon Salad

Feta Watermelon Salad

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

© 2026 · © Easy Cook Inspo · All Rights Reserved · Created by Kaylee ·

Powered by
►
Necessary cookies enable essential site features like secure log-ins and consent preference adjustments. They do not store personal data.
None
►
Functional cookies support features like content sharing on social media, collecting feedback, and enabling third-party tools.
None
►
Analytical cookies track visitor interactions, providing insights on metrics like visitor count, bounce rate, and traffic sources.
None
►
Advertisement cookies deliver personalized ads based on your previous visits and analyze the effectiveness of ad campaigns.
None
►
Unclassified cookies are cookies that we are in the process of classifying, together with the providers of individual cookies.
None
Powered by