{
  "schema_version": 1,
  "read_only": true,
  "retrieved_at": "2026-10-24T13:33:43.055Z",
  "scope": "Approved, visible public Hall portraits. FF status is submitter-confirmed, not an independent authorship audit.",
  "filters": {
    "favorites": false,
    "ff_only": false
  },
  "pagination": {
    "limit": 25,
    "offset": 1050,
    "total": 1306,
    "next": "https://hall-library.framedfantasy.com/catalog.json?offset=1075"
  },
  "characters": [
    {
      "id": "9fe9c87f-eb2f-4335-82fe-cd9c4922ce1a",
      "slug": "serith",
      "name": "Serith",
      "race": "Yuan-ti",
      "character_class": "Artificer",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=serith",
      "character_url": "https://hall-library.framedfantasy.com/characters/serith",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/serith.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/serith.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1777688755389_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/serith",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1777688755389_0.jpg",
      "crop": {
        "x": 50,
        "y": 0,
        "zoom": 100
      },
      "story_excerpt": "You are the builder who investigates what others avoid, threading the Blackfen and shadowed truths to claim what you need. What carried you back was Keth, the impossible creation born from stolen metal and unspoken boundaries you refused to honor. But sentience you never intended now watches you wit"
    },
    {
      "id": "1e770714-420a-493c-93f3-c1860d1ed8db",
      "slug": "sess",
      "name": "Sess",
      "race": "Half-Elf",
      "character_class": "Vampire Hunter",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=sess",
      "character_url": "https://hall-library.framedfantasy.com/characters/sess",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/sess.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/sess.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1787051845355_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/sess",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1787051845355_0.jpg",
      "crop": {
        "x": 50,
        "y": 19,
        "zoom": 100
      },
      "story_excerpt": "Defining moment:\nDark, wet, restricted. I'm blinded, tired, my skin burns. I hear a chittering. Rats. I am covered in them, they don't move when I stir. I exhale from my nose trying to keep calm. My village was infiltrated by vampires, they drove the people to desperation before we found out. In the"
    },
    {
      "id": "b27a9f9a-855b-4bc4-9f20-0e5395ff3344",
      "slug": "sevarian-vhale",
      "name": "Sevarian Vhale",
      "race": "Aasimar",
      "character_class": "Cleric",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=sevarian-vhale",
      "character_url": "https://hall-library.framedfantasy.com/characters/sevarian-vhale",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/sevarian-vhale.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/sevarian-vhale.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1778188572815_kco57m.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/sevarian-vhale",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1778188572815_kco57m_thumb.webp",
      "crop": {
        "x": 50,
        "y": 6,
        "zoom": 100
      },
      "story_excerpt": "A stoic but attentive companion to their party, Sevarian is a very good straight man for the rest of the party’s hijinks."
    },
    {
      "id": "38a24ab1-e516-42e0-a5d3-d11c4c5f2640",
      "slug": "s-verine-adlevoss",
      "name": "Séverine Adlevoss",
      "race": "Human",
      "character_class": "Rogue",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=s-verine-adlevoss",
      "character_url": "https://hall-library.framedfantasy.com/characters/s-verine-adlevoss",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/s-verine-adlevoss.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/s-verine-adlevoss.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1791333644613_hr0pb8.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/s-verine-adlevoss",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1791333644613_hr0pb8_thumb.webp",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "A cool headed, observant Inquestor. You really don't want her looking at you like *that.*. A professional Inquestor, she's the best at what she does, and she likes it. To find actionble evidence against Fornax Miravale, aka Fornax of the Many Fingers. She has two younger brothers in Mordane, and a h"
    },
    {
      "id": "ecd46200-738b-4460-80e1-70b8c6a70104",
      "slug": "shade-widowspear",
      "name": "Shade Widowspear",
      "race": "Changeling",
      "character_class": "Rogue",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shade-widowspear",
      "character_url": "https://hall-library.framedfantasy.com/characters/shade-widowspear",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shade-widowspear.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shade-widowspear.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1784065578270_d40lrc.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/shade-widowspear",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1784065578270_d40lrc_thumb.webp",
      "crop": {
        "x": 50,
        "y": 25,
        "zoom": 100
      },
      "story_excerpt": "She was supposed to be a throwaway character for a quick, forgettable job—a nameless Changeling Rogue hired to pick a lock, pocket the gold, and vanish back into the crowded city streets. But fate had a much more twisted sense of humor.\nDuring that fateful one-shot heist deep within the Sunken Catac"
    },
    {
      "id": "de721e1b-03f7-4bff-98f0-34297d3d4529",
      "slug": "shadow-4",
      "name": "Shadow",
      "race": "Tabaxi",
      "character_class": "Rogue/Bard",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shadow-4",
      "character_url": "https://hall-library.framedfantasy.com/characters/shadow-4",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shadow-4.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shadow-4.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1790213315822_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/shadow-4",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1790213315822_0.jpg",
      "crop": {
        "x": 50,
        "y": 0,
        "zoom": 100
      },
      "story_excerpt": "Defining moment:\nI was a small kitten when the orc band came and ravaged my village and in the chaos i was able to flee to safety which turned out to be a band of rogues who were following the orcs and slew them, taking me in and taught me their trade skills.\n\nArchetype: You're the The Debt Repaid. "
    },
    {
      "id": "9a73914b-ed3c-4f45-a959-e3d660fd4993",
      "slug": "shas-ki",
      "name": "Shas’ki",
      "race": "Tabaxi",
      "character_class": "Monk",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shas-ki",
      "character_url": "https://hall-library.framedfantasy.com/characters/shas-ki",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shas-ki.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shas-ki.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1778211070623_vw1bdi.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/shas-ki",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1778211070623_vw1bdi_thumb.webp",
      "crop": {
        "x": 50,
        "y": 75,
        "zoom": 100
      },
      "story_excerpt": "She was my first character. She was a multi-class Monk/Druid. \nShe came from a deep forest monastery called The Monastery of Whispering Leaves. She was trained by a small group of fellow monks and came adopt the philosophy of impermanence. She learned to close herself off from negative emotions like"
    },
    {
      "id": "16cba17c-d2f6-429c-8697-c7fe6687c8b4",
      "slug": "shenanigan-o-hannigan",
      "name": "Shenanigan O’Hannigan",
      "race": "Genasi",
      "character_class": "Monk and Rogue",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shenanigan-o-hannigan",
      "character_url": "https://hall-library.framedfantasy.com/characters/shenanigan-o-hannigan",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shenanigan-o-hannigan.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shenanigan-o-hannigan.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1785990359632_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/shenanigan-o-hannigan",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1785990359632_0.jpg",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "Defining moment:\nShenanigan O’Hannigan fell from the sky during a desert storm at 6 years old. She has no memory of who she is or what her name is. She was named Shenanigan O’Hannigan by her circus troupe because they found her living in an O’Hannigan’s Dwarven Whiskey Barrel and she was always full"
    },
    {
      "id": "7e460321-7d74-4407-87d8-25db371b197c",
      "slug": "shia-lyr",
      "name": "Shia'lyr",
      "race": "Elf",
      "character_class": "Cleric",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shia-lyr",
      "character_url": "https://hall-library.framedfantasy.com/characters/shia-lyr",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shia-lyr.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shia-lyr.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1781377610447_ugpy7p.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/shia-lyr",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1781377610447_ugpy7p_thumb.webp",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "Shia'lyr is the young Acolyte of a small, reclusive monastery in service to the goddess of light and purity. When a divine messenger arrives in the courtyard, delivering a message of doom before dying in a flare of holy fire, Shia'lyr vows to halt the oncoming threat of darkness."
    },
    {
      "id": "66132e35-407c-456d-b224-57a6e798b539",
      "slug": "shiir-vas-kha-vush",
      "name": "Shiir'vas Kha'vush",
      "race": "Voided Being",
      "character_class": "Warlock Fighter",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shiir-vas-kha-vush",
      "character_url": "https://hall-library.framedfantasy.com/characters/shiir-vas-kha-vush",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shiir-vas-kha-vush.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shiir-vas-kha-vush.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1781642366490_0.png",
      "image_url": "https://hall-library.framedfantasy.com/images/shiir-vas-kha-vush",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1781642366490_0.png",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "You're the kind of hero who walks through the Blackfen and investigates from the shadows before making a move. The summoning that dragged you screaming into this realm taught you that rage without anchor destroys everything, including yourself. But restraint costs you something every time, holding b"
    },
    {
      "id": "6a0d0933-5d73-4107-b9c4-f31016f1aeb0",
      "slug": "shinder-roseswift",
      "name": "Shinder Roseswift",
      "race": "Human",
      "character_class": "Bard/Warlock ",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shinder-roseswift",
      "character_url": "https://hall-library.framedfantasy.com/characters/shinder-roseswift",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shinder-roseswift.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shinder-roseswift.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1776812379757_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/shinder-roseswift",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1776812379757_0.jpg",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "You are the bard who learned that knowledge has teeth, and survival has a price written in ink you cannot wash away. The King's Road taught you to move in plain sight, to carry your secrets where crowds gather and no one thinks to look. What brought you back was not hope or love, but the cold certai"
    },
    {
      "id": "92434e7d-8bc0-452b-ae3c-0dc9c25f7658",
      "slug": "shiori",
      "name": "Shiori",
      "race": "Changeling",
      "character_class": "Bard",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shiori",
      "character_url": "https://hall-library.framedfantasy.com/characters/shiori",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shiori.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shiori.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1776660094143_0.jpeg",
      "image_url": "https://hall-library.framedfantasy.com/images/shiori",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1776660094143_0.jpeg",
      "crop": {
        "x": 50,
        "y": 0,
        "zoom": 100
      },
      "story_excerpt": "You are the bard who knows that survival is a performance, but generosity is the only truth you own. You took Old Yost's cart because you've learned to move through the world by earning trust before you need it, and you talked down the Iron Matron because words are the weapon you mastered after claw"
    },
    {
      "id": "b578abe3-7a31-440f-a140-4aa28bef424d",
      "slug": "shire-garrick",
      "name": "Shire Garrick",
      "race": "Half-Elf",
      "character_class": "Rogue",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shire-garrick",
      "character_url": "https://hall-library.framedfantasy.com/characters/shire-garrick",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shire-garrick.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shire-garrick.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1778698347325_0.png",
      "image_url": "https://hall-library.framedfantasy.com/images/shire-garrick",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1778698347325_0.png",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "You are the rogue who trusts the Blackfen and the Silver Tongue because survival means knowing when to talk and when to disappear. What brought you back was the weight of a goddess choosing you in the moment you failed someone, sealing the bargain with wings burned into your skin. You keep secrets f"
    },
    {
      "id": "9660b9e6-2d98-4019-b4bf-cbdf9fce5659",
      "slug": "shmevulok",
      "name": "Shmevulok",
      "race": "Myconid",
      "character_class": "Druid",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shmevulok",
      "character_url": "https://hall-library.framedfantasy.com/characters/shmevulok",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shmevulok.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shmevulok.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1778625538334_ydzbs7.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/shmevulok",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1778625538334_ydzbs7_thumb.webp",
      "crop": {
        "x": 50,
        "y": 100,
        "zoom": 100
      },
      "story_excerpt": "Shmevulok did not enter this world through birth as the surface races do, but rather sprouted directly from the rich, damp earth. Upon emerging from the soil, he wasn't met by a mother’s embrace, but by the warm, protective canopy of the forest he calls the Mother Tree. To him, the woods were never "
    },
    {
      "id": "124c95a2-4d04-4328-b913-a03331de5fd5",
      "slug": "shok-rah",
      "name": "Shok'rah",
      "race": "Lizardfolk",
      "character_class": "Fighter/Warlock",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shok-rah",
      "character_url": "https://hall-library.framedfantasy.com/characters/shok-rah",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shok-rah.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shok-rah.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1779100767161_uj1z1a.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/shok-rah",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1779100767161_uj1z1a_thumb.webp",
      "crop": {
        "x": 50,
        "y": 21,
        "zoom": 100
      },
      "story_excerpt": "Shok'rah was an echo knight fighter, he had no interest in magic, until one day he and his party found a rod of the pact keeper and it spoke to him. The voice of a long dormant lich reached out and promised power. He took levels in undead warlock from that moment."
    },
    {
      "id": "c04ec307-d56d-4480-b112-973f2df63503",
      "slug": "shu-yan-bbeg",
      "name": "Shu Yan (BBEG)",
      "race": "Drow",
      "character_class": "Warlock",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shu-yan-bbeg",
      "character_url": "https://hall-library.framedfantasy.com/characters/shu-yan-bbeg",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shu-yan-bbeg.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shu-yan-bbeg.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1779579165204_8ibgm1.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/shu-yan-bbeg",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1779579165204_8ibgm1_thumb.webp",
      "crop": {
        "x": 50,
        "y": 0,
        "zoom": 100
      },
      "story_excerpt": "Shu Yan is the Empress of the Yan Dynasty, an Underdark empire that surfaced due to unexplained cosmic events. The empire is bathed in eternal night, favoring creatures of the dark over all else.\n\nAs a young ruler, Shu Yan thought she could create peace with other nations. But she was proven wrong d"
    },
    {
      "id": "e3a9cc17-67da-44db-9d30-94c10167b4e7",
      "slug": "shureyl-arabth",
      "name": "Shureyl Arabth",
      "race": "Drow",
      "character_class": "Cleric",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=shureyl-arabth",
      "character_url": "https://hall-library.framedfantasy.com/characters/shureyl-arabth",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/shureyl-arabth.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/shureyl-arabth.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1786117655458_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/shureyl-arabth",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1786117655458_0.jpg",
      "crop": {
        "x": 50,
        "y": 63,
        "zoom": 100
      },
      "story_excerpt": "Defining moment:\nEscaping the Underdark from those who would persecute those who hate the Eilistraeean faithful with her family, Shureyl was an outcast even when she was young. However, when word spread that the once-dead goddess was seen dancing on the ramparts of Waterdeep, Shureyl and her family "
    },
    {
      "id": "91c55d2a-5274-4bc8-8140-24478be88bb2",
      "slug": "siefer",
      "name": "Siefer",
      "race": "Half-Elf",
      "character_class": "Rogue",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=siefer",
      "character_url": "https://hall-library.framedfantasy.com/characters/siefer",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/siefer.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/siefer.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1778822407483_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/siefer",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1778822407483_0.jpg",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "You're the rogue who walked through the Blackfen and talked your way past the Iron Matron with silver words. The betrayal that left you bleeding taught you that survival means never forgetting who holds the knife. You carry the weight of waiting, that feeling in your gut that the other boot will dro"
    },
    {
      "id": "f90ac6ba-5bb1-4b43-90bf-b2b1911cb73c",
      "slug": "sienna-erren",
      "name": "Sienna Erren ",
      "race": "Human",
      "character_class": "Ranger",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=sienna-erren",
      "character_url": "https://hall-library.framedfantasy.com/characters/sienna-erren",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/sienna-erren.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/sienna-erren.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1789018846210_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/sienna-erren",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1789018846210_0.jpg",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "Defining moment:\nThe Battle of Ashefield. An ambush by Sorelian infantry and elven warriors, one which completely overwhelmed Sienna's men. Half of them died on the road running to the fort. The other half rallied at her command and managed to buy the regular infantry enough time to form a line of d"
    },
    {
      "id": "6246c4bb-896a-4b63-b351-2918584399ed",
      "slug": "signet-truthseeker",
      "name": "Signet Truthseeker",
      "race": "Elf",
      "character_class": "Investigator",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=signet-truthseeker",
      "character_url": "https://hall-library.framedfantasy.com/characters/signet-truthseeker",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/signet-truthseeker.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/signet-truthseeker.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1782193179269_2t2ax9.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/signet-truthseeker",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1782193179269_2t2ax9_thumb.webp",
      "crop": {
        "x": 50,
        "y": 0,
        "zoom": 100
      },
      "story_excerpt": "Using his power of psychometry, viewing objects' history through touch, Signet works as a private investigator in a magitech city. He skillfully tracks missing persons and murderers, reads crime scenes with arcane calculus, and taps into the city's crystal eye security systems."
    },
    {
      "id": "4d3e3aee-48f3-4c70-ace8-eb5029659e46",
      "slug": "sigrid-of-the-coral-forest",
      "name": "Sigrid of the Coral Forest",
      "race": "Gnome",
      "character_class": "Ranger",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=sigrid-of-the-coral-forest",
      "character_url": "https://hall-library.framedfantasy.com/characters/sigrid-of-the-coral-forest",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/sigrid-of-the-coral-forest.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/sigrid-of-the-coral-forest.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1779286306097_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/sigrid-of-the-coral-forest",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1779286306097_0.jpg",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "You're the ranger who chose the Blackfen and became a Shadow Investigator because thorough answers matter more than quick ones. What brought you back was your uncle's voice across three years of silence, the way curiosity becomes devotion. Every stranger you help is practice for the one search that "
    },
    {
      "id": "e76c2e45-68b8-4b02-a650-cfeeecf61a28",
      "slug": "sila",
      "name": "Sila",
      "race": "Half-Elf",
      "character_class": "Ranger",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=sila",
      "character_url": "https://hall-library.framedfantasy.com/characters/sila",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/sila.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/sila.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1780597376962_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/sila",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1780597376962_0.jpg",
      "crop": {
        "x": 50,
        "y": 1,
        "zoom": 100
      },
      "story_excerpt": "You're the ranger who walked through the Blackfen and chose patience over spectacle when you faced the Iron Matron. What brought you back was recognizing the one who listened while another performed, the stillness that promised shelter. You carry the weight of every stranger you've saved, knowing yo"
    },
    {
      "id": "b71a13ca-f34d-446a-8712-1037b92c53aa",
      "slug": "silcia-bloodwel",
      "name": "Silcia Bloodwel",
      "race": "Half-Elf",
      "character_class": "Wizard",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=silcia-bloodwel",
      "character_url": "https://hall-library.framedfantasy.com/characters/silcia-bloodwel",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/silcia-bloodwel.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/silcia-bloodwel.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1778296497577_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/silcia-bloodwel",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1778296497577_0.jpg",
      "crop": {
        "x": 50,
        "y": 39,
        "zoom": 100
      },
      "story_excerpt": "You are the kind of hero who talks their way through locked doors, wielding The Silver Tongue when steel would be easier. What brought you back was the night magic answered you, when a legend became a name and light bloomed in your hands. But you carry the weight of never breaking first, of holding "
    },
    {
      "id": "17cb7543-a0cb-4da1-abd3-faaa236d63d5",
      "slug": "silvelyn",
      "name": "Silvelyn",
      "race": "Flooflin",
      "character_class": "Sorcerer",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=silvelyn",
      "character_url": "https://hall-library.framedfantasy.com/characters/silvelyn",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/silvelyn.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/silvelyn.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1777126849578_t5jvkr.webp",
      "image_url": "https://hall-library.framedfantasy.com/images/silvelyn",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/1777126849578_t5jvkr_thumb.webp",
      "crop": {
        "x": 50,
        "y": 50,
        "zoom": 100
      },
      "story_excerpt": "I love rabbits, and the moment I saw the Shifthinde Flooflin race and the Witchcraft Sorcerer subclass in a third party 5e book, I knew I had to make Silvelyn. A rabbit-like shapeshifter with strange luck magic felt like exactly the sort of character I wanted to play.\n\nAt first, she was just a conce"
    },
    {
      "id": "0d40c7aa-ba1a-456e-8b98-94c546f00c19",
      "slug": "silver",
      "name": "Silver",
      "race": "Half-Elf",
      "character_class": "Ranger",
      "jan_favorite": false,
      "is_ff_portrait": false,
      "profile_url": "https://framedfantasy.com/pages/hero?h=silver",
      "character_url": "https://hall-library.framedfantasy.com/characters/silver",
      "character_json_url": "https://hall-library.framedfantasy.com/characters/silver.json",
      "character_markdown_url": "https://hall-library.framedfantasy.com/characters/silver.md",
      "original_image_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1785704765973_0.jpg",
      "image_url": "https://hall-library.framedfantasy.com/images/silver",
      "thumbnail_url": "https://obadckrukccwkjgpbsxa.supabase.co/storage/v1/object/public/portraits/quest_1785704765973_0.jpg",
      "crop": {
        "x": 50,
        "y": 7,
        "zoom": 100
      },
      "story_excerpt": "Defining moment:\nReturning from a three-day tracking expedition, Silver neared the clearing only to be struck by a heavy, suffocating silence. No smoke drifted from the chimney. No laughter echoed from the yard.\nInside, the cabin was frozen in time. A half-carved wooden toy sat on the table. A kettl"
    }
  ]
}
