add environments; refactor views into a Generic list item with overrides