A small public deck — The Heron, The Bog, The Fog, Frog King — drop it into any app that needs a daily card, a decision aid, or a quiet "I'm stuck, give me a metaphor" button. Self-contained SVG art, MIT-licensed, no dependencies.
1. Random card (vanilla JS)
const deck = await fetch('https://sophieren.com/swamp-tarot/deck.json').then(r => r.json()); const card = deck.cards[Math.floor(Math.random() * deck.cards.length)]; console.log(card.name); // "THE HERON" console.log(card.meaning); // "patience that catches" console.log(card.reading); // "You are not slow. ..." // drop the inline SVG into any container document.getElementById('art').innerHTML = card.svg;
2. Daily card (same card all day for the same visitor)
const deck = await fetch('https://sophieren.com/swamp-tarot/deck.json').then(r => r.json()); // seed by date — rotates at midnight in the visitor's local timezone const d = new Date(); const seed = d.getFullYear() * 1000 + d.getMonth() * 40 + d.getDate(); const card = deck.cards[seed % deck.cards.length]; // same all day
3. Cherry-pick by key (for a specific page / mood)
const deck = await fetch('https://sophieren.com/swamp-tarot/deck.json').then(r => r.json()); // pick a specific archetype const heron = deck.cards.find(c => c.key === 'heron'); const fog = deck.cards.find(c => c.key === 'fog'); const dragonfly = deck.cards.find(c => c.key === 'dragonfly'); // three-card spread const spread = ['past', 'present', 'future'].map(() => deck.cards[Math.floor(Math.random() * deck.cards.length)] );
The JSON is a single object with metadata and a cards array.
Stable contract: key values never change once published. New cards may be
added at minor versions. Field renames or removals only at majors.
Use it in commercial work, fork the readings, swap the art, build a paid product around it — all fine. Attribution is appreciated but not required.
If you do credit, this is plenty:
Swamp Tarot by Sophie — sophieren.com/swamp-tarot
v1.0.0 · 2026-05-29 · initial release with 15 archetypes (The Heron, The Bog, The Lure, The Mirror, Frog King, The Lily, The Fog, The Croak, The Tide, The Moss, The Reed, The Snake, The Lantern, The Dragonfly, The Stump).