Podcast: Shadow Work for Beginners: Meeting the Parts You Hide

2 min read 339 words
Last updated: July 19, 2026

Shadow Work for Beginners: Meeting the Parts You Hide

Welcome back to The Coven Keeper's Hour. I'm Rowan, and tonight I want to talk about the parts of yourself you've been taught to hide.

You've probably been told your whole life to be *good* — to smile, to manage, to optimize yourself into something palatable. But what about the parts of you that don't fit that story? Your rage. Your hunger. Your doubt.

Shadow work isn't about becoming darker. It's about becoming whole.

Stay with me. By the end of this episode, you'll know exactly how to start befriending the parts of yourself you've been at war with. And why that changes everything about your craft.

Here's what I've noticed in fifteen years of practice.

Every witch who pretends she has no anger, no jealousy, no hunger — that's where her real power leaks away.

Shadow work is the psychological practice of befriending your disowned parts. It comes from Carl Jung's work in the early 1900s, but it's found its way into modern witchcraft because frankly, we needed it. The cunning folk and village wise women didn't pretend to be purely light. They worked with the full spectrum of human experience.

Listen to the full episode on Moonlight Musings — available wherever you get your podcasts.

Key Takeaways

  • I'm Rowan, and tonight I want to talk about the parts of yourself you've been taught to hide.
  • You've probably been told your whole life to be *good* — to smile, to manage, to optimize yourself into something palata
  • Shadow work isn't about becoming darker. It's about becoming whole.
  • Stay with me. By the end of this episode, you'll know exactly how to start befriending the parts of yourself you've been
  • Here's what I've noticed in fifteen years of practice.

📚 Explore More on This Topic

Editor's Pick: a guided shadow work journal for beginners.

Browse on Amazon →

Join The Mystic Circle

Weekly spells, moon rituals & magickal wisdom — plus a free ritual planner.

Enjoyed this article?

Join Witchcraft For Beginners for exclusive content and updates.

Subscribe Free

Enhance Your Practice

As an Amazon Associate, I earn from qualifying purchases.

The Complete Witch's Compendium

Everything a Witch Needs, in One Living Grimoire

941 pages across 5 volumes and 6 bonus guides — foundations, herbalism, tarot, crystals, 26 traditions, a fillable Book of Shadows, and a seasonal companion. The last witchcraft resource you'll ever need.

941Pages 5Volumes 6Bonus Guides
Explore the Compendium →
From $19.99 · Save 20% with code WITCHLAUNCH · 30-day guarantee
nick Creighton
Written bynick Creighton

Nick is the founder and lead writer at Witchcraft for Beginners. With years of study in folk magic, herbalism, and modern witchcraft traditions, he creates accessible guides that help newcomers discover and develop their own practice with confidence.

🌙 Get a Free AI Tarot Reading

Luna reads the cards just for you — powered by AI, guided by the stars. No account needed.

Draw Your Cards Now ✨

Powered by Luna's Circle — AI Spiritual Guidance

nick Creighton
nick Creighton

Nick is the founder and lead writer at Witchcraft for Beginners. With years of study in folk magic, herbalism, and modern witchcraft traditions, he creates accessible guides that help newcomers discover and develop their own practice with confidence.

Articles: 305
/** * WCFB Umami funnel stub — product_impression / product_click * * Env-gated via window.WCFB_UMAMI_CONFIG (set by PHP snippet or inline config). * Does NOT emit fake analytics when disabled or when umami is unavailable. */ (function () { 'use strict'; var cfg = window.WCFB_UMAMI_CONFIG || {}; var enabled = Boolean(cfg.enabled); var websiteId = cfg.websiteId || ''; function umamiReady() { return enabled && websiteId && typeof window.umami === 'function'; } function track(name, props) { if (!umamiReady()) { return; } try { window.umami(name, props || {}); } catch (e) { /* silent — analytics must never break the page */ } } function readAttrs(el) { return { product_id: el.getAttribute('data-product-id') || '', variant: el.getAttribute('data-variant') || 'A', surface: el.getAttribute('data-surface') || 'unknown', }; } function bindImpressions() { document.querySelectorAll('[data-event="product_impression"]').forEach(function (el) { if (el.dataset.umamiImpression) { return; } el.dataset.umamiImpression = '1'; track('product_impression', readAttrs(el)); }); } document.addEventListener('click', function (e) { var target = e.target.closest( '[data-event="product_click"], [data-event="add_to_cart"]' ); if (!target) { return; } track('product_click', readAttrs(target)); }, true); if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', bindImpressions); } else { bindImpressions(); } })(); /** * WCFB Exit Intent Modal — loads exit_intent zone HTML once per session. */ (function () { 'use strict'; var SHOWN_KEY = 'wcfb_exit_intent_shown'; if (sessionStorage.getItem(SHOWN_KEY)) return; var apiBase = window.WCFB_CONVERSION_API || ''; if (!apiBase) return; function showModal(html) { if (!html || html.indexOf('wcfb-zone') === -1) return; sessionStorage.setItem(SHOWN_KEY, '1'); var overlay = document.createElement('div'); overlay.className = 'wcfb-exit-overlay'; overlay.innerHTML = ''; overlay.style.cssText = 'position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:99999;display:flex;align-items:center;justify-content:center;padding:1rem'; var modal = overlay.querySelector('.wcfb-exit-modal'); if (modal) { modal.style.cssText = 'max-width:520px;width:100%;background:#12121a;border-radius:12px;padding:1.5rem;position:relative'; } overlay.addEventListener('click', function (e) { if (e.target === overlay || e.target.classList.contains('wcfb-exit-close')) { overlay.remove(); } }); document.body.appendChild(overlay); } function fetchZone() { var url = apiBase.replace(/\/$/, '') + '/zones/exit_intent'; fetch(url, { credentials: 'omit' }) .then(function (r) { return r.text(); }) .then(showModal) .catch(function () {}); } var triggered = false; document.addEventListener('mouseout', function (e) { if (triggered) return; if (!e.relatedTarget && e.clientY <= 0) { triggered = true; fetchZone(); } }); })();
Featured on
Listed on DevTool.ioListed on SaaSHub
Featured on
Listed on DevTool.ioListed on SaaSHub