Collection: Djeco

The French Toy Brand that's at the forefront of creativity, quality, innovation and design when it comes to children's toys, Djeco offers something special in every one of their products. 

Driven by awakening children’s sense of wonder, enriching their imaginations and inspiring them to discover more, they are serious about attention to detail when it come to every aspect of design, practicality and safety. Their products are not only fun, but also beautiful, as they team up with a range of artists and illustrators to make each toy and piece of stationary a work of art to be treasured and admired. 

130 products
  • Emotions Duo Puzzle - Djeco
    Regular price
    R 199.00
    Sale price
    R 199.00
  • Wooden Baby Popi - Djeco
    Regular price
    R 485.00
    Sale price
    R 485.00
const button = event.target.closest('.custom-product-add-to-cart'); if (!button) return; event.preventDefault(); const variantId = button.dataset.variantId; if (!variantId) { console.error('No variant ID found.'); return; } if (button.disabled) return; const originalText = button.textContent; button.disabled = true; button.textContent = 'Adding...'; fetch(window.Shopify.routes.root + 'cart/add.js', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' }, body: JSON.stringify({ items: [ { id: Number(variantId), quantity: 1 } ] }) }) .then(function(response) { return response.json().then(function(data) { if (!response.ok) { throw new Error( data.description || 'Could not add product to cart.' ); } return data; }); }) .then(function(data) { button.textContent = 'Added ✓'; return fetch(window.Shopify.routes.root + 'cart.js'); }) .then(function(response) { return response.json(); }) .then(function(cart) { const cartCount = document.querySelector('#CartCount span'); if (cartCount) { cartCount.textContent = cart.item_count; } const cartDrawer = document.querySelector('cart-drawer'); if (cartDrawer && typeof cartDrawer.open === 'function') { cartDrawer.open(); } setTimeout(function() { button.disabled = false; button.textContent = originalText; }, 1500); }) .catch(function(error) { console.error('Add to cart error:', error); button.disabled = false; button.textContent = 'Error - try again'; setTimeout(function() { button.textContent = originalText; }, 2000); });