Back in the day I usually ran towns like sandboxes. You'd give players a map with keyed buildings and they'd have to wander around to go shopping or see what was there. There were random encounters every X feet or minutes. Some buildings had surprises. There were wandering npcs with secrets or missions, criminals, monsters in dark corners out in the sewers or disguised in plain sight.
It wasn't a campaign, just a visit to town.
Haven't really done this in years. Players lack the patience so we just hand wave towns now. Shopping is abstract. You walk thru the city gate and "teleport" to the shop you want.
I kinda miss the old way. It was tedious and time consuming but fun, and you got a feel for the place.