I have a few days and want to take a bus to check out some neighboring towns. Which ones do are best?
In particular for street food or activities (hiking, surfing, snorkeling).
Olinda is a place you should not miss.
Very pretty town just half an hour drive from Recife
And if you like surfing then Praia de Gaibú a little south of Recife has some really good surf.
Just make sure to check out the local shark situation there as it's sometimes a problem in the area.
And take a hike across the hill to the smaller beach called Calhetas Beach which is super pretty and better for snorkelling than Gaibu.
Mentioned in this answer: