EyebrarianPrize winnersGet the app

Books › Rosemary and Rue

Cover of Rosemary and Rue

Rosemary and Rue

368 pages

A gritty, rain-slicked descent into a hidden magical underworld where survival means confronting the ghosts of a broken past.

What it feels like

Reading this feels like stepping into a classic noir detective film, but the shadows are hiding bloodthirsty fae instead of mobsters. The atmosphere is heavy with San Francisco fog and the protagonist's world-weary melancholy, creating a gritty, rain-slicked mood that permeates every scene. It moves at a brisk, determined pace, pulling you through a labyrinth of old grudges and hidden magical courts. The prose is sharp and pragmatic, balancing hardboiled cynicism with moments of dark, lyrical beauty. It is an emotionally bruising but deeply satisfying experience, tracing a journey from isolated trauma to battered resilience. This will thoroughly delight readers who crave urban fantasy anchored by a stubborn, deeply flawed heroine who takes a beating but refuses to stay down.

Mood
  • gritty
  • rain-slicked
  • shadowy
  • bittersweet
Tone
  • cynical
  • world-weary
  • wry
  • melancholic
Pace
brisk
Themes
alienation and belonging · the weight of the past · survival against the odds · cost of loyalty
The writing
Hardboiled and pragmatic, laced with sharp, cynical observations and flashes of dark lyrical beauty.
The arc
From isolated, traumatized reluctance to a battered but resolute acceptance of her place in the world.
Who it's for
Readers who love their urban fantasy grounded in noir tropes, featuring deeply flawed, stubborn protagonists who take a beating but keep getting back up.
Content notes
  • violence
  • murder
  • trauma
  • blood
  • kidnapping

About the book

The Fae never disappeared they just learned to hide themselves. Toby Daye is half fae and works as a private detective in San Francisco. When she is hired to investigate the murder of an old friend it brings up old secrets.

Description from Open Library.

Books like Rosemary and Rue

See why they match