improved basic CRUD functionality but it's still buggy on refreshes