Szopi is a platform for grocery shopping that makes it possible to order products from a variety of brick and mortar stores online, and have them delivered to one’s doorstep.
The purpose was to take its MVP to the next level and help Szopi scale up thanks to robust technology. We took over the project management and implemented the front-end layer that eased the whole buyer's journey (along with payment processing) and enabled browsing and searching for specific products, among others.
The app was written with React.js library. The data needed for setting the website and its shopping cart in motion are stored and propagated with the combination of Redux and redux-observable. This allows us to control the data flow from the API to the application, and the other way round. At the same time, the flow itself remains clear and easy to follow at every stage.
The form handling, however, is possible thanks to the use of Formik and Yup libraries. The first library is responsible for displaying form controls, reacting to changes and sending data to the API, whereas the other enables fast (almost real-time) validation of the details entered in the form.
Nonetheless, the main challenge was to develop a practical and well-designed shopping cart. Szopi is not a regular online store since its customers can order products from various vendors (such as Carrefour and Lidl). That’s precisely why it should be clear to see which stores are the items in the cart being ordered from and what’s the final price, including the delivery costs.
Despite the challenges, Szopi is now a fully-functioning and intuitive platform that enables online grocery shopping, even from stores that normally don’t offer such a service. Essentially, customers are able to enter the website, choose their location, browse products from different shops, add them to cart and finalise the order. All that is left to do is to wait for the delivery and enjoy shopping without leaving home.