Building an Android app for grocery and inventory management

99.99%

System High Availability

3x

Increase Productivity

99.99%

Robust Inventory System

Allowing New App Features

Click here to download

Overview

One of the key challenges of a modern life is the need to multitask and juggle your personal and professional lives. We are constantly challenged for time and looking at ways in which to be efficient and productive in whatever we do, whether it is exercising, managing our finances or grocery shopping.

A key deterrent to effective time management and money management is unorganised grocery shopping where you walk up and down the aisles, thinking what to get and buying things that you may already have, while forgetting something that led you to the shopping expedition in the first place. Using an app to help you organise your household inventory and integrate your shopping list is a genius solution to this problem.

Our client is a leading provider of technology solutions in the food and beverages industry. The client wanted to build a comprehensive Android enterprise application to help consumers keep their household stock up to date. The brief was to build a modern, user-friendly and ‘smart’ application that helped busy people organise their inventory so that they could get notified when items are about to run out in their pantry. The Android app should also help people save money by alerting users of those items that are about to go past their expiry or best before dates, and which items are still in plenty at home. We also needed to be agile in our release management, with accelerated delivery schedule and continuous deployment. In addition, the app should offer an integrated shopping list so that users stay on top of their household requirements and share information and updates about the inventory with other members of the household.

The Business Need

  • Building a user friendly Android app compatible for multiple devices
  • App must provide an overview of the grocery and inventory at home
  • Must have a built-in barcode scanner to easily get product information
  • The app should notify the users when an item is about to exceed its best before date
  • Should feature an extensive inventory of curated national and international products for ease of use
  • The app should alert users about items that are low in stock
  • Integrating a shopping list within the app to make grocery buying effortless and efficient
  • Possibility to check shops/stores near you that offers the best prices for your inventory
  • Ability to integrate with trade chains to monitor your shopping spends easily
  • Should notify users about product recalls
  • Should support multiple languages
  • Ability to order items on your shopping list online with a click of a button
  • Must support both generic products(milk,banana, flour, butter) and specific products using ingredient/nutrient information

Challenges

  • Maintaining extensive inventory and product details including information about allergies/ingredients
  • Supporting multiple languages, imported products
  • Designing a user flow that helps users take fast and informed decisions
  • Ensuring cross-platform, cross-device and operating system compatibility
  • Creating a user-friendly, fast and intuitive interface to ensure user retention
  • Integration of shopping lists across trade chains to monitor best prices and shopping spends
  • Creating notifications for user preferred items as they go on sale
  • Undertaking research on global markets, local markets and user preferences to provide the best experience for target audience’s shopping behaviour

Solution

  • Built a Native Android consumer app using appropriate technologies and components
  • Designed an attractive user flow and UI to enable optimum adoption
  • Deployed the application on AWS with ECS Fargate, RDS and CodePipeline for continuous delivery
  • Leveraged MySQL to manage the database and inventory accurately
  • Leveraged Spring Boot with Java 11 for API integration to make sure most recent data is available by syncing data in real-time across devices
  • Created an interactive, user-friendly and fast application that fulfilled all the requirements
  • Used CI/CD pipeline and DevOps best practices for backend deployment and Android release management on Google Play Console.

    Android Application Development Technology stack:

    Mobile Architecture: MVP
    Mobile Tools: Android, Retrofit, Google MLKit Barcode Scanning, GSON, Material
    Design Component, SDP/SSP, Location Service, Argon2Kt

Business Benefits

  • Built a highly interactive and user-friendly mobile Android app
  • High number of app downloads and app user retention
  • Positive customer rating and reviews on both App Store and Google Store
  • Flawless integration of shopping lists across stores
  • Insights into customer behaviour and shopping trends for optimising and customising the service

Conclusion

We used CI/CD pipeline for Android release management on the Playstore and maintained a high frequency of releases using CodePipeline. Using MVP we built a highly modular, easily testable and maintainable codebase. The resultant app used Android, Retrofit, MLKit for Barcode scanning and together these technologies ensured we ticked all the boxes. We ensured the users have the most current data available by synchronising relevant data to all devices but also enabling users to work offline when the internet connection is spotty. The result is a visually stunning, interactive, fast and highly user friendly Android app that drives downloads and usage.

Download Case Study
Contact us