Octavia Spencer stars in “The Witches.” (HBO Max)

“The Witches” is based on Roald Dahl’s book. He’s a prolific author who made a career, of sorts, focusing on characters that seriously despise little children. His novel credits include “James and the Giant Peach,” “The Enormous Crocodile,” “Matilda,” and “Charlie and the Chocolate Factory.”

In Dahl’s book, “The Witches,” an orphan is on vacation with his grandmother at a majestic hotel, where he stumbles upon an active coven of witches who is attending a nefarious meeting presided over by the Grand High Witch. Their goal is to circulate a powerful potion that can turn children into mice which will then allow them to be exterminated with extreme prejudice.

The first film version (1990) of the book, “The Witches,” was directed by Nicolas Roeg and the Grand High Witch was played by Anjelica Huston. Fast-forward to 2020 and under director Robert Zemeckis, the new version, set in the deep south, is delicious, perfect, charming, exciting, and better than the original in every single way, sorry Nicolas Roeg.

Let’s talk about casting and a re-imagining of the world.

The story begins in Demopolis, Alabama, in 1968 and our hero (Jahzir Bruno) is 8-years-old. He loses his parents in a car accident and moves in with his warm, and bright Grandma (Octavia Spencer) who takes him on a holiday for a splurge at the Grand Orleans Imperial Island Hotel where his cousin is an executive chef.

Alabama native Octavia Spencer, Jahzir Kadeen Bruno and Stanley Tucci (right) are in the cast of “The Witches,” a movie on HBO Max. (Daniel Smith/HBO Max)

In this massive ballroom, the witches, alone, can remove their wigs (all witches are bald), re-move their gloves (all witches have mangled claws, and their shoes (all witches have numbs for feet). These crafty evil ones work under the guise of holding a convention of the International Society for the Prevention of Cruelty to Children. And it’s where our brave hero gets vaporized —poof—by a vial of purple potion and turned him into a mouse.

The same fate awaits the greedy Bruno (Codie-Lei Eastick), a chubby British kid. They join Daisy (Kristin Chenoweth), the hero’s pet mouse, whom it turns out has already been the victim of this evil and permanent transformation. The three rodents scurry around the hotel in an elaborate plan to expose the witches and stop their evil plans.

As the Grand High Witch (Anne Hathaway) is a chic but terrifying woman on a mission. She’s the stuff of kids’ nightmares made more irritable since she’s bald and suffering from a scalp rash but the most striking is her mouth, extended back by scars which gives her an enlarged, creepy smile.

The triumph of this new version lies in the casting. Octavia Spencer as our hero’s grandmother is loveable. Hathaway’s strength (and there are many) is that she doesn’t allow the visual effects to upstage her performance.

Four-out-of-four marks for “The Witches” — fun as only Robert Zemeckis can deliver.

An HBO Max release of a Warner Bros. presentation of an ImageMovers, Necropia, Esperanto Filmoj production. Producers: Robert Zemeckis, Jack Rapke, Alfonso Cuarón, Guillermo del Toro, Luke Kelly. Executive producers: Jacqueline Levine, Marianne Jenkins, Michael Siegel, Gideon Simeloff, Cate Adams.

Directed by Robert Zemeckis. Screenplay by Robert Zemeckis, Kenya Barris

Starring Anne Hathaway, Octavia Spencer, Jahzir Bruno, Codie-Lei Eastick, Stanley Tucci, Chris Rock, Charles Edwards, Morgana Robinson, Eugenia Caruso, Simon Manyonda.

PG. Running time: 105 MIN.