tons of styling and crud functionality