DIY Sun Diamond Painted Coasters

$16.99
$94.95
-82%
Style:  1 Set Of 10 Pcs [40% OFF + Coaster Stand]
Quantity
The current produc does not participate any Rebate. Switch the participating product to check the design.
(This prompt will not be displayed on the client-side.)
people are viewing this right now
Shipping
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1711101560621').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);

Description

WELCOME TO DIAMOND DOT ART - YOUR CREATIVE HARBOR

Embark on a journey of artful tranquility with our DIY Diamond Painting Coasters, designed to bring a touch of handmade elegance to your home while nurturing your inner peace. Dive into the details below and discover how you can transform your leisure into a therapeutic escape.

OUR CUSTOMERS ARE LOVING DDA™ COASTERS

Our DDA family cherishes these coasters, not just for their beauty, but for the joy of creation they inspire. Here’s why they’re cherished:

✔️ Therapeutic Crafting: Each dot you place helps ease the mind, offering a soothing respite from the bustle of daily life.

✔️ Home Adornment: Choose from an array of designs to accentuate your living space with vibrancy and personal touch.

✔️ Functional Artistry: Beyond decoration, these coasters safeguard surfaces with a sparkle, transforming the everyday into something special.

UNBOX SERENITY WITH EVERY KIT

Your Diamond Painting Coasters Kit is your gateway to relaxation. Each set, complete with individual coasters or a full set option, includes:

✔️ Exquisite coasters awaiting your touch

✔️ A rainbow of pre-sorted, high-quality diamonds

✔️ Wax, stylus pen, and holder tray for seamless crafting

✔️ An exclusive coaster holder with set purchases

YOUR ARTISTIC JOURNEY IN 6 SIMPLE STEPS

  • STEP 1

    Begin with a clean slate by removing the protective layer

  • STEP 2

    Let the intuitive design guide you - match symbols with ease

  • STEP 3

    Prepare your pen with just a touch of wax

  • STEP 4

    Gently pick and place each diamond, like stars in the sky

  • STEP 5

    Witness a tapestry of color blossom before you

  • STEP 6

    Revel in the completion of your very own masterpiece coasters

Shipping policy

USA and Canada: 7 - 14 Business days

Oceania: 7 - 21 Business days

Europe: 5 - 10 Business days

Latin America: 10 - 25 Business days

Other countries: 14 - 30 Business days

Orders can be cancelled or modified within 2 hours after being placed

Tracking Number: When available, we will send you the tracking number with the confirmation email so that you can track the package online.

International orders: It may take additional days if orders have to go through customs.

Free Shipping for all U.S. orders over $49

We need to take 1-3 days to process the order after you done the payment. We do not ship on weekends.

Satisfaction guarantee

Safe payments via Paypal®

100% Moneyback Guarantee.

24/7 assistance admin@oadiy.com

We have 24/7/365 Email Support. Please contact us if need assistance.

Worldwide tracked shipping.

Tracking numbers will be emailed to you once the item is shipped!

No hidden fees!

If you don’t have a positive experience for ANY reason, we will do WHATEVER it takes to make sure you are 100% satisfied with your purchase.

STEP 1

Begin with a clean slate by removing the protective layer

STEP 2

Let the intuitive design guide you - match symbols with ease

STEP 3

Prepare your pen with just a touch of wax

STEP 4

Gently pick and place each diamond, like stars in the sky

STEP 5

Witness a tapestry of color blossom before you

STEP 6

Revel in the completion of your very own masterpiece coasters

FAQs

Frequently asked question

Email us at huayutrading2022@hotmail.com if you cannot find your answers.

How many pieces do I get?

We sell in both individual piece and a set of coasters. Please kindly select accordingly.

How do the coasters handle moisture?

We recommend to coat the coasters with diamond painting sealant to waterproof it.

Do glasses slip on them when condensatation starts running down the outside of a cold drink?

We tested it ourselves and haven't met with any issues. The same goes for our customers.

What is the coaster made of?

Our coasters are made of premium wood that is sure to last for a long time.

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.

Social Welfare

We created a fundraising plan that combines both! With every order placed at Handcrafts Store®, we make a donation to a charitable organization. Whether it's the Global Fund, your local Red Cross, or any other charity, Handcrafts Store® is happy to support your cause!