WIP: Component view framework