View framework