view class (wip)