Car Shopper is an app designed for the Echo Show App that enables a user to search for cars via voice commands. The idea is to allow for a more natural car searching experience. When car searching online you are typically required to set filters to see the cars you want. However, when filters are set you can easily miss out on good cars that may not fit into your filter set. The Car Shopper app is intended to act like a virtual salesman. As Car Shopper shows you cars you can respond by saying that you like or dislike a car. As your history grows Car Shopper will analyze your like and dislike history to show you cars that you are more likely to like.

What it does

Car Shopper analyzes your like and dislike history to better suggest cars that a user may want to buy. This app also allows you to train the initial engine with a set of base preferences to further streamline the results. The only required base preference is a city. This lets our app know where to being searching for cars. All results will be in a 50 mile radius. Once the city is set Car Shopper will start showing you cars for sale. If you know some basic details such as the body style or minimum mileage you want you can set those. You can even set makes, years, and max price. With base preferences set Car Shopper starts searching. Dislikes and likes will be run through a preference algorithm to determine your interests. That information is used to pull out the result of subsequent searches that you are more inclined to like. No hard filters required. Car Shopper will find the perfect car for you based on your saved history.

How to use:

Start app

Alexa, start 'Car Shopper'

Perform car search (only requires a city be set)

Alexa, peform car search now

Set base preferences to improve suggestion algorithm (all base prefences are optional except city) These are persisted. you can quit and come back at any time

Alexa, update city (required)

Alexa, update body styles

Alexa, update min year

Alexa, update conditions

Alexa, update max price

Alexa, update max mileage

Alexa, update makes

To clear preferences (City cannot be cleared once set. It can be updated)

Alexa, clear body styles

Alexa, clear min year

Alexa, clear conditions

Alexa, clear max price

Alexa, clear max mileage

Alexa, clear makes

Save last viewed car as a like or dislike

Alexa, save response

Show base preferences

Alexa, show me my preferences

Review like history

Alexa, show me my likes

Reset base preferences and clear like/dislike history (This allows you to start everything over. Intent is not confirmed.)

Alexa, reset app data

How I built it

I used NodeJS with the Javascript Alexa SDK to interact with various intents and slots to capture preferences. I used DynamoDB to store preferences that would fuel the preference engine. I used a car api to search available inventory in a radius of a user's zip code. I created a simple machine learning algorithm to determine the similarities in the liked datasets and the disliked datasets to better predict which cars a user would like or dislike and generate better car search suggestions.

What's next for Car Shopper

Future feature ideas:

  • Price change notifications for liked cars
  • Make offer to dealership via email for a saved car
Share this project: