* Create database tables for multichoice exercise
* Fetch exercise data from DB, form page slugs according to multichoice_exercises id
* Populate DB with example multichoice exercise data
* Remove confusing user message while useQuery handles data
* Display exercise description
* Add automatic shuffle of multichoice options order
* Reset incorrect answer style coloring when user reselects an answer option (before resubmitting)
* Rename migrations to avoid conflicts with master
* Update populate file with category column
* Create tests for multichoice exercise
* Fix typo from conflict resolving
* Create multiple choice exercise page
* Create multichoice exercise logic with basic user feedback
* Create multichoice.css, use Button component
* Fine-tune and clean up exercise CSS
* Remove reset of incorrect answers, small changes for improved readability
* Change to a more explicit structure for exercise data
* Change file and component names to more descriptive ones
* Create session check feature with logout link in navbar
* Create session context to update conditional user view on first render
* Add logout api call to navigation logout button
* Create middleware to restrict logged-in users from accessing login and register pages
* Add middleware for logged-in users only protected pages
* Redirect user back to original protected page after successful login
* Create tests for session api route
* Create documentation
* Create route for Login page
* Add login form and basic layout pattern for auth with placeholder styling
* Add basic event handling for form
* Add controlled inputs to form