Violet's (Sanaa Lathan) mother Paulette (Lynn Whitfield) insists that she look perfect at all times, leading to Paulette working diligently to straighten Violet's natural hair. Violet struggles with her mother's perspective until her hair becomes naturally wild and frizzy during an incident at the pool; when the other children begin to ruthlessly tease Violet, a horrified Paulette takes her home.
As an adult, Violet is seemingly perfect: she is a successful advertising executive, has a doctor boyfriend Clint (Ricky Whittle) and wears her hair long and straight with great effort. Her relationship with Paulette continues to be close as she helps keep Violet close to the vision of perfection. However, their relationship with Violet's father (Ernie Hudson) became estranged after he quit his job to become a model.
Violet expects Clint to propose on her birthday. When she accidentally gets sprayed by a neighbor’s kids, she urgently visits a hairdresser to fix her hair. The salon owner's daughter, Zoe (Daria Johns), erroneously gives relaxer to Violet's hairdresser, which causes Violet's hair to fall out in clumps. A furious Violet causes a scene and insults Zoe's afro before getting a weave.
At her birthday dinner, Clint surprises a disappointed Violet with a dog instead of a proposal. When she confronts him at home, Clint confesses that he doesn't feel like he truly knows Violet and compares their relationships to a "two-year first date." This revelation leads to Violet ending their relationship.
Violet notices Zoe shoplifting during a shopping trip and drags her out of the store, only to be stopped by a security guard. The salon owner, Will (Lyriq Bent), arrives at the mall and is furious over Zoe's actions. When Violet suggests something with Zoe could be wrong, Will rebuffs Violet before leaving with Zoe.
Violet later bleaches her hair blonde that night and goes to the club with her friends. After getting drunk, she attempts to have a one-night-stand, but it goes awry after their foreplay leads to the man busting his head open. She then tries to visit Clint at the hospital, only to find him with another woman. A defeated Violet returns home to find herself with frizzy hair when she looks in the mirror. The next morning, Violet is horrified to learn that she shaved her head the previous night. Wearing a scarf on her head, she cries in the bathroom at work. A woman there suggests she come to her support group, which she later discovers is for cancer survivors. Violet apologizes, but the group leader gives her words of support.
Over time, Violet grows confident with her new look. She begins dating Will and befriending his daughter, Zoe. Violet and Will quickly grow close, and he attends her mother's Fourth of July party. While there, he is disrespected by Paulette, who makes condescending comments about him and his career choice. He breaks it off with Violet, telling her to sort herself out.
After losing a pitch for an ad campaign with diverse women to a male colleague's idea using blonde models, Violet quits her job. At home, she dances to upbeat music while Clint, who is picking up his things is watching and appreciating her loosening up. As it has been months since the breakup, Clint is interested in Violet and apologizes, saying he never wanted her to think she wasn't beautiful. As the dog peed on Clint’s shirt, she allows him to shower. Then as she is joining him, they have sex. The next morning, Violet is preparing breakfast, but Clint insists she sits at the table, and cuts onions. He proposes with an onion ring and she says yes. Both she and her mom are excited, and Violet’s friends are told the wedding is in three months. Violet, who has stayed connected with Zoe, invites her to the engagement party.
Clint requests Violet straighten her hair to meet his parents, and Paulette helps straighten it. At the party, Violet meets Clint’s parents, feels pressured and uneasy, and goes off alone. Her heels are killing her, so she takes them off. Everyone is seated and waiting for her, so the parents look for her. Finding her, Violet says Zoe would go barefoot and knows who she is while she doesn't. Going barefoot to the pool, surrounded by tables of people, she jumps in and invites others. Zoe, Violet’s two girlfriends, and others join her. Violet’s father grabs her mother and they jump in, and make up with a kiss. Clint looks on, disappointedly.
Some days later, Violet and Will are in the conference room of an ad agency, and she is pitching Will’s plant-based hair products for women’s natural hair. After the meeting, Violet and Will walk out together, and after speaking briefly, Violet walks away confidently.
The romantic comedy project Nappily Ever After was previously in development by Universal Pictures in 2003, when the studio had Patricia Cardoso to direct the film adaptation of Trisha R. Thomas' novel of same name, and the script was written by Tina Gordon Chism which was later rewritten by Lisa Loomer.[8][9]Halle Berry was boarded to star in the film which had producers Berry and Marc Platt along with Vincent Cirrincione and Angela DeJoseph.[9]
On August 15, 2017, it was announced that the film was now developing by Netflix and Sanaa Lathan was cast to play the lead role, which Haifaa al-Mansour would direct from a screenplay by Adam Brooks and Cee Marcellus. Producers would be Platt, Tracey Bing, Jared Leboff, and Lathan.[1]Ernie Hudson also joined the film to play Violet Jones' (Lathan) father Richard.[2] In August 2017, Lynn Whitfield had joined the film to play Violet's mother, Paulette.[4] In September 2017, more cast was announced which included Ricky Whittle as Clint, a doctor from London who has a long-term relationship with Violet; Lyriq Bent to play Will Wright, a hair stylist and salon owner who starts a new relationship with Violet; and Camille Guaty also joined the film to play Wendy, one of Violet's best friends.[5][3][6] On September 11, 2017, Brittany S. Hall was cast in the film to play one of Violet's best friends.[7]