UrCustomHUB - ๐ŸŒ™ Holiday Black Cats Embroidery Kit

people are viewing this right now
$20.99
$30.99
Save 32%
Tax included. Shipping calculated at checkout.
Options : Black Cat - A
Quantity
Worldwide shipping
Sustainably made
Secure payments
Description

๐ŸŒ™ Holiday Black Cats Embroidery Kit

Difficulty Level: ๐Ÿชก๐Ÿชก๐Ÿชก

Step into a whimsical world where black cats frolic among flowers, perch on crescent moons, and peek curiously from behind leafy greens. Our Holiday Black Cats Embroidery Kit blends charm and creativity—perfect for cat lovers and embroidery enthusiasts alike.

๐Ÿงต Embrace the Joy of Creation:

  • Beginner-Friendly: Each kit includes detailed pre-printed fabric, step-by-step instructions, and a video tutorial to help all skill levels—whether you're a total beginner or a seasoned stitcher.

  • Stress-Relieving Craft: Let your worries melt away as you bring these playful black cats to life, one stitch at a time. It's the perfect way to relax, recharge, and enjoy some me-time.

๐Ÿพ Unique and Enchanting Designs:

  • Featuring a delightful mix of playful, curious, and dreamy black cats surrounded by blooming flowers, leafy greens, and magical moons.

  • Versatile Applications: Turn your finished piece into decor for tote bags, pillows, or wall art. Add a sprinkle of charm to any space!

  • Home Decor Favorite: These embroidered scenes are great conversation starters and will infuse your room with warmth, nature, and a hint of magic.

๐ŸŒฟ Premium Quality Materials:

  • Canvas Size: 30cm x 30cm

  • Embroidery Hoop: Durable 20cm round wooden hoop

  • Thread: Vibrant, colorfast cotton thread

โœจ What's Inside:

  • 1 Pre-printed embroidery cloth

  • 3 Embroidery needles

  • Color embroidery threads

  • Easy-to-follow instructions

  • Access to a detailed tutorial video

๐ŸŽ The Gift of Handmade:

Make your own cat-themed masterpiece or gift it to someone special. Handmade embroidery isn’t just a present—it’s a heartfelt gesture full of time, love, and personality.

๐ŸŒธ Create, Relax, and Fall in Love with Every Stitch.

Bring home your Holiday Black Cats Embroidery Kit today!

At UrCustomHUB, we’re proud to support sustainability. Every kit is packaged with care, using eco-friendly materials and triple-layer protection to ensure it arrives at your door just as perfect as it left ours. ๐Ÿ’š

Customer Reviews
Here are what our customers say.
Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.