Fire crews raced to the scene, a two-story structure in the 300 block of Bay Street, just after 8 p.m. after receiving 911 calls about a possible apartment fire, said the South Kitsap Fire District duty chief.
When firefighters arrived, flames were shooting from one side of a vacant building just below the apartments, and there were reports of three people trapped in one of the units.
Meanwhile, the three trapped residents took matters into their own hands. With the exit blocked, the three of them jumped from their apartment window onto the roof of a next-door structure. From there they jumped down to a truck below.
Medics transported all three to Harrison Hospital in Bremerton for treatment of minor lacerations, minor leg and arm injuries and smoke inhalation.
Crews battled the blaze for nearly an hour to put it out.
Up to four apartment units were damaged by the blaze.
The cause remains under investigation.
There was no word yet on whether there were working smoke alarms in the apartment building.