We just came back from 6 days in St. John. I know it is not a restaurant mecca but I think it was better than three years ago. We ate at Zozos twice. I think it is the best of the bunch. Fresh fish, lovely salads and a wonderful shellfish stew. They also have parking.
Waterfront Bistro was fine, I always stick to the local fish and it was good but not wildly creative. I also had an avocado and cucumber soup that was fine. It is a lovely location and the service was good.
The Fish Trap was fine although I wish they would serve plain grilled fish rather than trying so hard. It is informal and as long as you pick local stuff it is perfectly acceptable.
We had lunch at Caneel Bay Grill at the resort. It is much, much better than the dreadful buffet. Excellent hamburger and a very good chicken Cesear with freshly cooked chicken
.The locals all liked Rhumlines so we tried it. It was not great. My husband had the local lobster and although expensive it was fine. I had tuna and found the sauce cloying.
We also tried the restaurant above the Starfish market called Plancha del Mar, I think. It was quite cute run by three young guys. However, ambiance is really bare bones. No fresh fish(?) so we had a steak which was not all that cheap. However, it was plated very nicely and it actually was very good. Good salad as well. We ate there since it was pouring rain and just a short ride from the hotel.