Implement a web application as described in “Application specification”-section, by using modern web technologies of your choice. Only browser requirement is that the application is working on the latest version of Google Chrome.
Download the data for the assignment here.
User must be able to upload a JSON file (vehicle_data.json) via form.
Uploaded data must be stored in a relational database. Recurring uploads must update existing database rows (instead of duplicating the data).
User must be able to search existing database rows by using a free text search box (See figure 1). Search must be on the same page as the upload form.
Search must be implemented as a “live” search, meaning that the search is listening for user input and the page doesn’t reload in between searches. Search results must be limited to 50. A search for ”volkswagen polo” should yield similar results to figure 2.
The frontend of the application must be implemented without the use of any third-party libraries (= use only vanilla javascript)
Implement an interface that follows Bluugo’s brand (https://bluugo.fi/).
JSON file in this test is public vehicle inspection data from Traficom (Finnish Transport and Communications Agency). Here is an example of the file contents:
[{
"model_year": "2013",
"make": "BMW",
"model": "5",
"rejection_percentage": "3,2",
"reason_1": "Renkaat ja vanteet",
"reason_2": "Jousitus ja iskunvaimennus",
"reason_3": "Valmistajan kilpi"
},
{
"model_year": "2013",
"make": "Skoda",
"model": "SUPERB",
"rejection_percentage": "3,2",
"reason_1": "Renkaat ja vanteet",
"reason_2": "Käyttöjarru",
"reason_3": "Käyttöjarrun dynamometritesti"
}]
Example of unfiltered view.
Example of filtered view when searching for “volkswagen polo”.