Dropbears
image of Saint James park taken by Michail Christofis
Project Ideas

Overview

In the modern world, services are gradually being made more accessible and easier to use. It is often difficult for the average person to find a product which they are looking for in shops in their vicinity, and it is even harder to find it at the best possible price. Due to this phenomenon, people often prefer to purchase their products from the internet, and hence, online sales are increasing dramatically (Emil Kristensen April 15 2021 paragraph 7).

However, an application could potentially turn the tables around. The group’s Project idea is to create an application that records what products local stores have in stock, what their price is at all points in time, and also when they go on sale. Doing so, people will be able to find a product which they are searching for with ease, whilst it also gives them the opportunity to be notified when a product they are looking for goes on sale, with an interface very similar to that of Amazon or Ebay, while simultaneously keeping track of their expenditures. This can be implemented, through scraping data from their websites, with the use of web automation like selenium in Python, or for the stores which do not have websites, it can be done by them sending a file containing the data, to the administrator of the app, who will in turn, manually (room for this to be automated in the future) enter the data.

In addition, the app will be able to plan which order the user should visit the stores (through the use of an API like Google OR-Tools), taking into account predicted traffic and predicted time taken inside each store, so that they can finish their daily shopping, as fast as possible. Furthermore, the app will also provide the user with the ability to check if they are about to purchase the products which they initially intended on purchasing, by scanning the bar-code or the item itself and comparing it to the stored data in the database (by using in the back end a tool like Google ML Kit or Google Cloud Vision). Moreover, it will also store the ingredients and recipes for a plethora of different foods, hence giving people the opportunity to minimize their spending, without compromising on the quality of life, by purchasing only what is required, based on the foods which they wish to prepare. The app will have a range of offline capabilities as well.

Motivation

Worldwide, the appeal of e-commerce is increasing, hence leading to its constant expansion. In the EU 73% of internet users shopped online in 2020 (Eurostat June 2021) and in the USA, 69% of Americans have shopped online, while 25% of Americans shop online at least once per month (Coral Ouellette January 6 2021 paragraph 7), with predictions indicating that by 2023 there will be over 300 million online shoppers in the USA (Coral Ouellette January 6 2021 paragraph 5).

a graph displaying statistics

These eye-watering statistics indicate that consumers favor the internet over local stores for many different types of purchases, hence also showing that the local stores are not providing the kind of service consumers are looking for. Reasons for this include the convenience of e-shopping, the greater number of options on the internet, and the lower prices, found on e-commerce websites (Melissa Boice March 19 2021). Notwithstanding, if an application could help them track their spending, find prices at local stores that are lower than those of online counterparts, whilst being easy to use and decreasing the amount of time required to spend, going from store to store, the shopping experience will certainly be enhanced for those that continue to wish to make some purchases in person.

Description

Price comparison

comparison image

The application will have a multitude of functionalities to help the user. The user will be able to search for a product, find which stores in their area have it in stock, which one has the best price, and will also be able to view the historical trend of the price, with an interface very similar to that of Amazon or Ebay. By having access to such data, the user will be able to find products with ease, without having to spend countless hours traveling to multiple local stores, searching for a specific product, only to find out that stock has been depleted. Using historical trends, it will display whether he is better off purchasing the product now, or whether the products’ price will gradually decrease.

Recipe and ingredient database

ingredient image

It is a commonly observed phenomena, that people, often tend to purchase more items than they need (Joshua Becker November 27 2018), due to a variety of reasons, something which is to their financial detriment. The effects of this bad habit, can be mitigated if people work out what foods they wish to prepare during the week, and then look up these foods on the app, so that it can inform them of both a scrumptious recipe, as well as all the ingredients required to produce the particular food. Once the user has selected the dishes which he wishes to cook for himself during the week, the application will then use the price comparison functionality to find optimal prices for these products. This way, the user both gets these products for the cheapest possible price and also doesn’t get tempted to purchase items which he doesn’t require.

Barcode scanner / product scanner

barcode scanner

In the modern world, supermarket shelves are crammed with products so similar, and yet so different. It can often be a buyer’s nightmare to filter through all the possibilities and find the product that he is looking for. However, a bar code scanner that has access to a vast database, will allow the user to make sure that he has indeed found what he was searching for.

For the few items in a shop that do not have bar codes (e.g., fruits and vegetables in the grocery), the user can leverage technology such as Vision AI (Artificial Intelligence), to recognize what product they are looking at. Hence, locating the item that he has in mind should become less of an ordeal. Another, of the complications regarding said technologies is the fact that the user must have a stable internet connection in order to utilize these features. The bar code scanner and Vision AI will be integrated in the app and will in the background use tools such as the Google ML Kit, and Google Cloud vision API.

Stock tracking

stock image

If the particular product which the person is searching for is in high demand and relatively low supply (as with GPUs during the COVID-19 pandemic), the app will inform him about the current situation and if it is completely out of stock, then it will also give him an approximation as to when it will be back in stock (an estimate which will be provided to the application, by experts in this domain). This same kind of technology would be useful in the transport industry as well, during peak season, as it would allow for commuters to plan optimally, taking into account market trends and a host of other data, so as to work out which travel dates suit them best, hence achieving both optimal timing and pricing. Undeniably, such an application would be extremely beneficial to the hoi polloi and could potentially revolutionize the way purchases are made at local stores.

User notification

notification image

In addition to the aforementioned services which the app will offer, it will also be able to notify someone when a product which they have recently been searching for is on sale. Doing so, it allows the user to continually be aware of the price trends and not to miss a vital opportunity, to buy something at the lowest possible price. Moreover, the person can also ask the app to inform him when an item, which is currently out of stock, is finally back in stock so as not to miss his chance, to purchase this on-demand item.

Optimal route calculation

optimal route image

Once someone has looked at all of this data and finally decided what purchases he wishes to make, he can then ask for the app to calculate the optimal route for him. The application will then process the information and solve the traveling salesman problem (TSP), whilst simultaneously taking into account the predicted traffic at the different times of day, as well as the predicted amount of time the user will take inside each store. The application will then be able to inform the person which route he should take, as well as in which order he should visit the shops, in order to finish his shopping errands, in the shortest time period possible. This data will be displayed on an easy-to-use map, similar to Google Maps, whilst the directions will be displayed on the phones’ screen. Undisputedly, this application has the potential to become a key part of many peoples’ lives.

Spending tracker

optimal spending image

Upon completion of their shopping spree, many people find it hard to recollect exactly where they spent their money. By using this app, they will continually be informed, throughout the duration of their shopping, how much they have spent till that point, and how much more they plan on spending. Moreover, even many months in the future, they will be able to view what exactly they purchased at any point in time in the past. This can prove very useful in a myriad of circumstances and can allow for users to save hours of anguish, sifting through old receipts.

Offline mode

offline mode image

Shoppers often don’t have unlimited access to mobile data, and hence sometimes they might want to use the app offline. Initially, while they are still at home, they will have to look up the products which they want to buy and have the app calculate the optimal route for them. The rest of the app will then be able to work without internet. It will do so, by using GPS so as to aid navigation and it will also store the bar codes of the products which you plan on buying. Moreover, the spending tracker data will also be saved locally on your mobile device. Furthermore, the bar code scanner will run locally on the device as well, not needing network connection. Certainly, this functionality can prove invaluable to users.

How to create the app

development image

In order for such an application to be created, technologies such as HTML5, CSS3, JavaScript, and PHP are required in order to design and develop the front-end and the back-end systems. Moreover, a server will also be necessary so as to do the computations needed and to host the website. The app will actively, every morning be updated about the prices of all products, of all local stores, as well as about their availability, bar codes which they are assigned and valid pictures of the items (for Google Vision and Google ML Kit), either through web automation and automatically scanning their website (with selenium in Python), or by the shops sending an updated list of prices and availability to the app administrator every day, who will in turn update all the data.

Furthermore, the recipes and ingredients required for them will have to initially be inputted manually, so as to have a comprehensive list. All of this data will be stored on a database in the server, which can be queried through the user interface, with the use of PHP. Also, the hardware required for the development of the application is readily available, since as a server, the developer can even use his personal computer. In addition, in order for the product scanner to function, software like Google ML Kit (Barcode Scanning n.d.) and Google Vision (Vision AI n.d.) will have to be employed, which is well documented.

When the user asks the application for the optimal route, the application will then solve the traveling salesman problem, by using in the background software like Google or tools (Traveling Salesperson Problem n.d.) which is able to find a near-optimal solution for 170 shops or more, within one minute (annis-souames 22 May 2019 4th comment), with the use of Christofides. Furthermore, the data of the predicted time for a certain route, or the predicted time spent at a shop, will be the statistical mean of previous similar occasions, hence achieving a relatively accurate result.

Knowledge required

For the apps’ creation, the developer needs to have solid knowledge of HTML5, CSS3, JavaScript, PHP and web automation with selenium in Python. Moreover, he would also require a server to do the computations required, as well as to host the application. In addition, web developers know HTML5, CSS3, JavaScript, and PHP very well. Also, web automation with selenium in Python can be learned within 30 to 40 days (Kiara Dawson August 12 2021). Furthermore, Google or tools (Traveling Salesperson Problem n.d.), Google ML Kit (Barcode Scanning n.d.) and Google Vision (Vision AI n.d.) are publicly available and well documented. Without a doubt, this project does not require a developer with a special skill set, despite its multi-functionality.

Outcome

If the project is successful and ends up being commercially viable, then purchasing from local stores might be revolutionized forever. By using this app, consumers will buy products at the lowest prices and save countless hours in commute time, as well as through the route optimization part of the app, which will calculate the optimal route, in order to complete your shopping in the most expedited manner possible. This way, people will be able to use their time more efficiently and might even result in an increase in customers for local stores. Furthermore, users will also be encouraged to only purchase as much as they need and will also have scrumptious recipes ready for the ingredients which they purchased. In conclusion, this app has the potential to make consumers’ lives easier and might even be able to reshape entire markets.