Six-time Olympic champion Usain Bolt showed a return to form to win the 100m at the Anniversary Games in London.
The Jamaican, who has been struggling for fitness, won both his heat and the final in 9.87 seconds in wet conditions at the Olympic Stadium.
"I really wanted to run faster," said Bolt, 28, who defends his world title next month. "But it's getting there."
Meanwhile, Britain's double Olympic champion Mo Farah received a great reception as he won the 3,000m.
Farah, 32, was competing in England for the first time since allegations of doping were made against coach Alberto Salazar, claims which Salazar and Farah both deny.
Olympic heptathlon champion Jessica Ennis-Hill, returning to the scene of her greatest triumph, ran 12.79 in a world-class 100m hurdles - just 0.25secs off the personal best she set on this track three years ago.
On the weekend when she will decide whether to compete at next month's World Championships in Beijing, the 29-year-old looks like she is finding her best form in her first season back since giving birth to her son, Reggie.
Besides Farah, other British winners on the night were 20-year-old Anguilla-born sprinter Zharnel Hughes, a member of Bolt's training group in Jamaica, in the 200m, and Laura Weightman, who triumphed in the 1500m.
Bolt had only raced once over 100m in 2015 before Friday, recording a time of 10.12 in April, because of a pelvic problem.
But his times on Friday were season's bests and equal sixth-fastest times of the year over the distance, although they are still behind American Justin Gatlin's world-leading time of 9.74.
Competing on the track where he won three gold medals at London 2012, Bolt started poorly in the final but overpowered his rivals in the last 10m.
America's Michael Rodgers was 0.03secs behind in second, while Bolt's compatriot Kemar Bailey-Cole was third in a personal best 9.92.
Significantly, British 100m champion CJ Ujah ran under 10 seconds for the second time in his career, equalling his personal best 9.96 on a chilly London evening.
Bolt the showman
Bolt promised to put on a show for the fans who endured a rain-soaked evening in east London to watch him compete in the first of a two-day Diamond League meeting.
As is always the way with the sport's principal showman his performance was more than a dash to the line: there was a lap around the track in a classic convertible to open the night and the habitual fooling around at the start line before he got down to business.
There are those who question whether we will see the Jamaican, who has run the three fastest times in history, at his best again, because of age and injury.
|BBC commentators on Bolt's performance|
|Steve Cram: "Usain Bolt is back in business, back to where he belongs, back to the top of the pile."|
|Mike Costello: "Can we ever get enough of this man? Flashlights all around the stadium, a party atmosphere, but for Usain Bolt it's a serious night of competition."|
But he won his heat effortlessly - running into a headwind - and while winning the final was more of a challenge, he still clocked a world-class time.
Thousands roared his every stride, flags waving and flashbulbs popping, simply pleased to see an athlete who transcends his sport back on the track.
Bolt ready for Beijing?
The Jamaican said in his press conference on Thursday he was not intending to lose in Beijing, where he won the first of his three Olympic titles.
Importantly, he has time to improve ahead of the Worlds and is closer to the heels of Gatlin than many had previously thought.
|Four quickest 100m times of 2015|
|9.74 - Justin Gatlin (15 May 2015 - Personal best)||9.75 - Justin Gatlin (9 July 2015)|
|9.75 - Justin Gatlin (4 June 2015)||9.78 - Justin Gatlin (17 July 2015)|
Gatlin, a two-time drugs cheat, has run under 9.8 secs in the blue riband event four times this year - 9.74, 9.75, 9.75, 9.78 - while Bolt has now run just three 100m races.
While the year's top three 100m sprinters, Gatlin, Asafa Powell and Trayvon Bromell, were not competing in London, Bolt's times in the Olympic Stadium were a loud and clear message that a successful defence of his 100m and 200m world titles is not fanciful talk.
The knee injury which hindered him last season has healed, while the pelvic problem which forced the Jamaican to withdraw from Diamond League meetings in Paris and Lausanne this month doesn't, on Friday night's evidence, seem to be serious.
And his form will be a relief to those who regard Bolt as the saviour of an event clouded by doping and feared Gatlin would easily win a sprint double next month.
Ujah raises British hopes with promising run
With less than a month until the World Championships, it was a night full of promise for 21-year-old CJ Ujah, which suggests he can compete with the best in Beijing.
He finished ahead of Frenchman Jimmy Vicaut, the fourth-fastest man this season, and compatriot James Dasaolu, who was ninth in a disappointing 10.19.
"It's crazy to run in front of my home crowd. I just want to build on this ahead of Beijing," said Ujah, one of five men to go under 10 seconds on the night.
"This is my first time running in the stadium, so this is all quite new to me - the atmosphere was just electric."
Hughes and Weightman make their mark
Zharnel Hughes produced a stunning personal best of 20.05 to win the men's 200m in a time that only two Britons - John Regis and Adam Gemili - have bettered.
"I didn't expect the PB because last week I had a niggle in my hamstring. I was just thinking relax and get to the line," said Hughes, who earned his British passport last month.
So dreadful were the conditions on occasion, the men's pole vault was suspended until Saturday, with world record holder Renaud Lavillenie apologising to the crowd afterwards.
When the women's 400m runners opened the racing the rain had abated and defending world champion Christine Ohuruogu went on to finish fourth, 0.18secs adrift of the season's best 50.82 she set in Monaco last week.
There was a personal best 51.48 for Welsh athlete Seren Bundy-Davies in the same race, while in the men's 110m hurdles her compatriot David Omeregie set a personal best 13.50 in the heats.
With British Athletics selecting their squad for the Worlds on 27 July, Laura Weightman made a statement of intent by winning the women's 1500m.
"I've had a tricky few races recently and that made me lose a bit of confidence, so this has really brought it back and told me that I am in the right place."