frontend with 3 routes