You could change them up to be any symmetrical shape inside (Easter Egg? Birthday present/cake? Christmas tree?) for another occasion.
I'm showing you each individual step below but you can whip them out them pretty quickly after you've made the first one.
2 Blank cards from Micheal's 4”x 5.5" (or card stock folded into cards)
2 pieces of pretty paper
Cut a pretty paper slightly smaller than the front of the card.
Fold the pretty paper in half width wise and cut a heart from the center.
Set the little cut out heart aside.
Take the folded paper and place it over the fold of the one of the blank cards.
Trace the heart-shape onto the blank card.
Remove the template.
Make 2 marks on either side of the heart where you will not cut!!
Cut the top curve of the heart and the bottom curve- leaving the tabs uncut.
Fold the tab one way and then the other.
Open the card and push the heart shape so it pops out.
Then re-fold it with the heart inside.
Open the second blank card and put glue stick on the front inside of the heart-cut out card.
Line the inside fold of the heart-cut card up with the inside fold of the blank card and press down in place.
Flip the card over and apply glue stick to the other side of the cut card and press into place.
Open the card and the heart should pop out -because you didn't put glue on it - right?! (pull it out with your finger if necessary).
Use glue stick to attach the 2nd piece of pretty paper to the back of the cut out heart hole paper (pretty paper you used as a template earlier).
Then glue whole thing to the front of the card.
Use glue stick to attach the leftover pretty paper heart to the inside heart.
You may need to trim the edges of the card depending how well they're lined up and fit together.
If you're feeling adventurous-make three hearts!
Just remember to put the heart tabs in the middle of the hearts- not too close to the top edge as they will pop up and not out when the card is opened.