The woman shot dead in double-amputee Olympian runner Oscar Pistorius' house was a model, a law school graduate and an entrepreneur committed to empowering women.
Reeva Steenkamp was to give an inspirational talk Thursday at a Johannesburg school.
Steenkamp had become a celebrity in her own right, said Publicist Sarit Tomlinson. She was one of FHM magazine's 100 Sexiest Women in the World for two years running, appeared in international and South African advertisements and was a celebrity contestant on Tropika Island of Treasure filmed in Jamaica. She was also the South African face of Avon cosmetics.
The freckled blonde who appeared in scanty bikinis on magazine covers and sashayed down the world's fashion ramps was "continuously breaking the model stereotype," said Tomlinson.
Steenkamp was "the sweetest, kindest, just angelic soul" and at the same time "a very inspiring individual, very passionate about speaking about women and empowerment."
Police said she was shot by four bullets in the early hours of Valentine Day. They said only Steenkamp and Pistorius were at his house in a gated complex in Pretoria, the capital. Police have arrested Pistorius on a charge of murder and said he will appear in court Friday. The two had been dating for a few months.
Scores of tributes were posted online. Her publicist said Steenkamp was 29 but police said she was 30.
Thursday morning, Steenkamp had been scheduled to give a motivational speech to school students in Johannesburg. "It was about empowerment and inspiration and what inspires you and how to follow your dreams," said Tomlinson, who had Steenkamp's notes for the speech.
On Twitter, Steenkamp tweeted messages urging women to stand up against rape as well as her excitement about Valentine's Day.
"What do you have up your sleeve for your love tomorrow?" she tweeted. "It should be a day of love for everyone."
Her last tweet was an enthusiastic acceptance of a friend's invite to celebrate the day with chocolate cupcakes topped with red hearts.
She also used her Twitter account to encourage her thousands of followers to fight sexual abuse.
"WEAR BLACK THIS FRIDAY IN SUPPORT AGAINST (hash)RAPE," she re-tweeted just hours before she died.
Steenkamp urged followers to stand up against violence against women, tweeting four days ago as South Africa was outraged by the particularly brutal rape and murder of a 17-year-old: "I woke up in a happy safe home this morning. Not everyone did. Speak out against the rape of individuals in SA (South Africa). RIP Anene Booysen (hash)rape (hash)crime (hash)sayNO."