further dashboard refactor