Example ToDo list app built with vanilla React + Vite.
Doing super generic setup. Using single controlled input with a button for adding new tasks; added keyup listener to "submit" on hitting Enter key so it works like a proper form.
Abstracted main content chunks into their own components. Added new "empty state" component to show when task list is empty. Added button to clear task list.