Here is an email I got today from a company I applied to on StackOverflow jobs site. They sounded ok on  the phone so I decided to go to the next step when they offered. Here's the email I received:

Create a Registration Website: Please read the instructions below carefully and follow step by step. Items marked with a BONUS are not required.
In this test you’ll be creating a registration website. Below you will find a list of instructions to follow to create this registration website. No design is required what so ever.
When creating this website, please be mindful of the following:
All elements should use Vuetify where possible
All form fields MUST use vee-validate’s HOC validation observer and validation provider components https://baianat.github.io/vee-validate/examples/validation-providers.html#vuetify
BONUS All models for form elements are bound to the Vuex store.
Using @vue/cli, scaffold a project using the following:
Babel
BONUS - Typescript
BONUS - ESLint rules for no semicolons
Vuex
Vue Router
Add Vuetify to the project
Add vee-validate to the project
Create 3 pages
Home Page
Account Creation page
Registration Page
BONUS - all pages are mobile responsive (design is not a concern)
BONUS use Vue Router to protect the navigation page when they’re not authenticated
BONUS use Vue Router to protect the account creation page when they’ve already authenticated
Home page must consist of a button linking to the account creation form, if they’re already registered, it should link to the registration page and show a log out button.
Account Creation page MUST implement the following:
An email field
Email is required.
It must be a valid email address
It cannot contain the domains @abc, @qwerty, and @example5
A password field
It must be at least 8 characters
Must contain at least 1 uppercase character
Must contain at least 1 number
A password confirmation field that:
Must be exactly the same as the password
Registration Page MUST implement the following:
The registration page must contain the following fields and their configurations:
First Name
required
Minimum of 2 characters
Maximum of 26 characters
No numbers or special characters
BONUS - No non-english characters
Last Name
required
Minimum of 5 characters
Maximum of 37 characters
No numbers or special characters
BONUS - No non-english characters
Email
Should be pre-filled from their account creation page
Should not be editable
Favorite Books – populate at least 5 answers, pick your favorite books!
Required
Must be a multi-select
Have you read a book within the last 6 months?
Required
Yes/No
Radio button
Mark all that apply:
Options:
I enjoy reading
I do not enjoy reading
I cannot read
Required
Must be a multi-checkbox component
When did you start reading:
Date input
Required
Cleared/Disabled if the option “I CANNOT READ” is selected from 6.1.3
Format should be YYYY-MM-DD
When did you finish reading:
Date Input
Required
Disabled unless 7 is filled
Cleared/Disabled if the option “I CANNOT READ” is selected from 6.1.3
Format should be DD/MM/YYYY
Please describe your favorite book
Textarea
Required
Minimum: 256
Maximum: 4096
BONUS - No non-english characters
The registration page must submit and show a “SUCCESS!” Message
Must be implemented in one of 3 ways:
Shows a new component, completely hiding the original form
Uses a v-if to show a new block of code
BONUS Navigates to a new page
If there are any setup requirements on our side to serve the page locally, please include those instructions in a README.md file - BONUS - use Vuepress to give instructions Validation Providers | VeeValidate
Please make this a public GitHub repository and provide the link when you’re ready via email.

I told them I charge $100/hour for programming. and who the fuck doesn't use semicolons!?

Whoever came up with this shit needs to be taken out back and shot.