add shelf view type, let list view to do later