Jax Sutherland owns the Painted Lady Bookstore, a three-story Victorian mansion in Port Palmas, California, converted into a bookstore by her step-grandparents in the 1970s. Each room houses a different genre with themed décor. Jax shares the building with Ramon, an African gray parrot. Divorced for about a year from Harris, a former major league baseball player turned high school coach, Jax lives in the bookstore's third-floor apartment during the alternating weeks she is not with her children, Gentry (12) and Xander (8). She and Harris rotate in and out of the family house rather than shuttling the kids between homes.
When Harris asks to amend their parenting plan so his girlfriend, Shawna Cipriani, a 26-year-old elementary school teacher, can spend the night during his weeks, Jax refuses. Their agreement prohibits adult sleepovers unless the parties are married or engaged. Ramon overhears the argument and picks up the phrase "You getting laid," which he begins repeating to customers.
Jax's younger sister, Ryleigh Weaver, also a teacher, celebrates a one-year anniversary with her boyfriend, Dustin, a local lawyer. She expects a proposal during a sunset walk in Santa Barbara, but the moment passes. Days later, Dustin returns with a ring and proposes in Ryleigh's classroom. To her own astonishment, Ryleigh says no, physically unable to accept despite having wanted the proposal for months. She confides in Alex Johnston, a widowed lawyer whose wife, Kim, died of cancer 14 months earlier. Ryleigh has become a surrogate family figure for Alex and his seven-year-old son, Noah. Alex gently suggests Ryleigh may not have been as in love with Dustin as she believed.
Shaken, Ryleigh considers moving to San Diego, where she attended college. Jax reacts with alarm, and the sisters argue, with Ryleigh accusing Jax of being controlling.
At the bookstore, Jax hires Marcus Collins, a contractor, to repair extensive water damage. Marcus informs her that a brick wall housing close to 200 personal diaries must be dismantled to reinforce structural supports. Built from repurposed post office boxes during the 1976 bicentennial, the wall holds journals stored by community members over decades, each diarist marking their brick with a unique symbol. Jax reluctantly agrees and plans to give the community time to claim their diaries.
Harris, rather than respecting Jax's refusal, proposes to Shawna solely to satisfy the engagement requirement. Jax confronts him at the high school, where he essentially admits he does not love Shawna. Shawna and her mother begin involving Jax in wedding logistics and asking intrusive questions about her marriage. Jax is caught between sympathy for Shawna and fury at Harris's deception.
Desperate to keep Ryleigh in town, Jax tries to set her up with Marcus. He refuses, telling Jax he is interested in her, not Ryleigh. He kisses Jax in her office, and she agrees to a date. Their first evening reveals easy compatibility, and Jax begins recognizing that her marriage failed partly because of her inability to share control or let Harris be a true partner. Her children's revelation that they used to hear their parents fighting before the divorce, and that the arguing frightened them, triggers further guilt.
Jax adopts a Ragdoll mix cat named Lucy as a companion for Ramon, but the cat lunges at the parrot and the introduction ends disastrously. Ramon refuses to speak to Jax for days. Ryleigh adopts Lucy, recognizing she has been postponing life choices while waiting for a hypothetical partner.
Over Memorial Day weekend, Ryleigh travels to San Diego with Alex and Noah to explore the area. Alex proposes they become friends with benefits, arguing they trust each other and neither is ready for commitment. Their physical relationship reveals a chemistry Ryleigh never experienced with Dustin. She secretly applies for a teaching position and receives a job offer.
When one of Marcus's workers accidentally scrubs the diary wall clean, erasing every identifying symbol, Jax faces a community crisis. She organizes a claiming event and lottery system. Most diarists recover their journals, though about 100 remain unclaimed. Cheryl Tatum, the bookstore's events coordinator, confesses she has been reading the unclaimed diaries and discovers one written by a young boy left home alone at night while his mother works. Jax and Cheryl quietly try to identify the child.
Harris, overwhelmed by escalating wedding plans, begs Jax to end his engagement on his behalf. She refuses, insisting he face the consequences. Ramon then disappears from the bookstore, plunging Jax into despair. Marcus organizes search parties and arranges for a computer program to monitor online parrot sales. Ryleigh stays overnight with Jax on the widow's walk, the bookstore's rooftop deck. Nearly a week later, Ramon returns with a scraggly orange stray cat at his side. He had left to find his own feline companion, having rejected Lucy but wanting a cat on his own terms. The stray, named Huckleberry, becomes a permanent resident.
Harris finally tells Shawna the truth: He does not want to marry her. Shawna is devastated. Jax comforts her and advises her to spend time with her parents. The children are upset; Gentry mourns losing her bridesmaid role, and Xander quietly grieves. Jax and Harris amend the parenting plan so that future sleepovers require marriage, not engagement.
During a picnic, Marcus asks Jax if she could ever see herself falling in love with him. She laughs and says no, not recognizing the gravity of the question. Marcus tells her that when she listed everything making her happy, he was not among them. He wants more than she can offer, and he walks away. In the weeks that follow, Jax confronts a painful pattern: She has never truly been in love because she is terrified of vulnerability and relinquishing control. Harris deepens this reckoning by confessing that the moment he decided to leave their marriage was at Kim's funeral, when he saw Alex's devastation and realized Jax would feel only relief at his absence.
When Jax discovers Ryleigh has been secretly interviewing in San Diego, the sisters fight again before reconciling. Ryleigh realizes she is in love with Alex but believes he still loves Kim. Cheryl gives Alex a diary written by Kim during her illness, in which Kim expresses her wish for Alex to find someone new. The diary gives Alex permission to acknowledge his feelings. He tells Ryleigh he is in love with her, and she confesses the same. They decide to stay in Port Palmas and build a life together, with Alex hinting at a proposal.
Cheryl also identifies an unclaimed diary as Dustin's. It reveals he developed intense feelings for Shawna while dating Ryleigh. Ryleigh brings the diary to Dustin and tells him Shawna is now single.
After weeks of failed attempts to reach Marcus, Jax delivers a halting but honest apology when he appears at the bookstore. She admits she is afraid of vulnerability but can see herself falling in love with him. Marcus accepts. They agree to date exclusively, and Jax invites him to a family pizza night, her first step toward integrating him into her children's lives.
An epilogue set two years later finds Jax marrying Marcus at the Painted Lady Bookstore. A very pregnant Ryleigh serves as matron of honor; she and Alex married about 18 months earlier, with Noah as Alex's best man. Gentry is a bridesmaid, Xander participates in the wedding party, Ramon attends from a perch, and Huckleberry sports a plaid bow tie. Jax reflects that it took nearly four decades to understand what it means to truly fall in love, then walks toward Marcus, certain she is stepping into the rest of her life.