/car-dealer-platform

Car Dealer Platform

Primary LanguageJavaScript

Car Dealer Platform

Instructions:

  1. Create a "Car dealer Application" using React.js similar to the one depicted below.

  2. You must use React.js & Node.is

  3. You need to store relevant UI inputs/details in node.is memory (using a map or any other data structure). Alternatively you can also use a database (mongodb, postgresql, mysql etc.,) of your choice to store the car details. Using a database is not a must for this assignment. You can simply store the details in nodes is memory too!

  4. Keep the UI simple with basic form or table elements and we are not interested in classy css stylings, so don't break your head in making the UI cool! We are interested to see the end-to-end working and how you integrate the pages with the backend.

Application:

We want to make a Car dealer's life easier by automating their cars' management. In this application, we need to provide the following features in the web application for the car dealers where:

a) As a car dealer I should be able to add my cars in the portal

b) I'd like to list the cars

You can use 2 simple sections as single page application like below:

  1. Home View: In this view I want all the cars' details to be listed along with the dealer & car details. For each car added, find the columns needed to be listed in this home page listing a. car registration no, car colour, car model, dealer name, dealer pin code

  2. Add Car View: The following details must be fetched as user inputs and stored a. Car model, car reg no, car colour, dealer name, dealer pincode b. On "submit/add", the car should be saved to the backend

Conditions:

  • If a dealer already exists with the "same dealer name", there should be an error message in the UI saying that the "dealer already exists".

  • If there is a car registration no that already exists then the UI should show the error message as "car reg no already exists" Add the needed APIs to the node.js backend and store the car/merchant details as mentioned in the instructions section above

Bonus Features:

  • We are looking for innovation. So feel free to surprise us with any additional feature you think will work fine here.

What are we looking for:

  • End-to-end functionality (UI, errors, backend) should work as mentioned in the document.

  • Use libraries of your choice and any CSS frameworks (like Bootstrap, Material, or Bulma) to assist the development.

  • Clean Code. We care a lot about code and make sure it is clean, readable, and maintainable.

  • User Right abstractions where needed.

  • We are particularly interested in understanding your craft and how you design your solution.

Notes:

  • Ignore any old browser compatibility issues. Making it work in the latest version of Chrome is enough.

  • Don't write any unit tests.

  • You may use any IDE you like