❤️ The Heart Behind Paws & Purpose | Paws and Purpose
Julie Prellwitz
·
October 17, 2025
At Paws & Purpose , we believe love is best shown through action — and sometimes, through what we wear.
What started as one pup’s unconditional love quickly became a movement. Inspired by Clyde — our loyal, goofy best friend — we set out to create apparel that celebrates the bond between people and their dogs while giving back to pups still waiting for their forever homes.
Each shirt and hoodie is designed with purpose. Every purchase helps provide meals for dogs in no-kill shelters across the country.
When you wear Paws & Purpose , you’re not just expressing love for your own dog — you’re sharing it forward. Shop the Collection →
💛 Wear the Love. Share the Purpose.
Subscribe to our newsletter
Sign up for our newsletter to recieve news, promotions, and annoucements.
Subscribe to our newsletter
Sign up for our newsletter to recieve news, promotions, and annoucements.
Choosing a selection results in a full page refresh.
Press the space key then arrow keys to make a selection.
Opens in a new window.
Opens external website.
Opens external website in a new window.
in layout/theme.liquid */
(function(){
function updateURLForVariant(variantId){
if(!variantId) return;
try{
var url = new URL(window.location.href);
url.searchParams.set('variant', variantId);
// replace state so back/forward isn't cluttered
window.history.replaceState({}, '', url.toString());
}catch(e){ /* ignore URL errors */ }
}
function initVariantWatcher(){
// If there's a select element for variant (common)
var select = document.querySelector('select[name="id"]');
if(select){
// update now with current selection
updateURLForVariant(select.value);
select.addEventListener('change', function(e){
updateURLForVariant(e.target.value);
});
return;
}
// Otherwise look for radio buttons for variants
var radios = document.querySelectorAll('input[name="id"][type="radio"]');
if(radios && radios.length){
radios.forEach(function(r){
if(r.checked) updateURLForVariant(r.value);
r.addEventListener('change', function(e){
if(e.target.checked) updateURLForVariant(e.target.value);
});
});
return;
}
// Fallback: listen for common Shopify custom events if theme triggers them
document.addEventListener('variant:changed', function(e){
try{
if(e.detail && e.detail.variant && e.detail.variant.id) updateURLForVariant(e.detail.variant.id);
else if(e.variant && e.variant.id) updateURLForVariant(e.variant.id);
}catch(err){}
});
// If variant UI loads later (AJAX), try again after small delays
var tries = 0;
var poll = setInterval(function(){
tries++;
if(document.querySelector('select[name="id"]') || document.querySelectorAll('input[name="id"][type="radio"]').length){
clearInterval(poll);
initVariantWatcher();
} else if(tries>20){
clearInterval(poll);
}
}, 300);
}
// Run on DOM ready
if(document.readyState === 'complete' || document.readyState === 'interactive'){
setTimeout(initVariantWatcher, 50);
} else {
document.addEventListener('DOMContentLoaded', initVariantWatcher);
}
})();