How I Build clone of (m-commerce) Grofer Application.

Aditya Cheke
5 min readJul 25, 2021

--

“Hi everyone”. Before reading this blog let me ask you a simple question?

What if all your work is done with just one click. Just one click will help you to decide what to shop for today. Just one will help you to explore more options. Just one click will help you to search for what is necessary and needed.

Sticking to that taught my team REBELS had made a clone of Grofers Application.

So let’s move forward to my blog on the Cloning of the Groffer Application.

So what is the Groffer application and why do people use it?

  • Grofers is an m-commerce(mobile-commerce) marketplace for your daily shopping.
  • It allows you to shop from your favorite store in your neighborhood. You can shop for groceries, Fruits & Vegetables, Bakery items, Flowers, Meats, Pet Care, Baby Care, and Cosmetics products with just a few taps

Things we used while making this application:

  • Github
  • Firebase
  • RecyclerView
  • Retrofit Library
  • Permissions

Task Distribution

On the first day, we had distributed our tasks in such a way so we don’t have to face some conflicts in the future. My team REBELS has two members Nishant and Rahul. I was working on the Home Screen and OnClickListener functionality, Nishant was working on RecyclerView and on JSON file and Rahul was working on Login and Membership UI.

Steps and Features we had implemented in it.

1. Trying to create the Ui of Splash Screen.

2. This is the Ui of Main Screen

Relative Layout, EditText, TextView, ImageButton, Intent Filter, CardView, Slider window, Horizontal as well as Vertical Scroll, RecyclerView with GridLayoutManager with the span count of 4.

3. Ui Category Layout

This is the Category Section Using which was build using RecyclerView and Load Json From Asset using Thread.

4.Offers Layout & Activity

Grid Layout, CardView, ImageView, ImageButton

5. MemberShip Layout

While Building the Ui we decided to use every time of layout like * Linear Layout, Relative Layout, Constraint Layout, Table Layout, Grid Layout so that we can understand every layout thoroughly.

6. Special Offer Section

OnClick of any of the category items you will redirect to this page where you can find the offers and on the particular item. Here we had used Firebase to fetch data from the server.

7. My cart

Once you clicked on the item you will redirect to the MyCart Activity where you can increase the count of the item and also can decrease the count as per your need. Once the product had been added to your cart you can remove that also by clicking the Close button.

Count of product and the Price is been handled by a small database which we had created on the FireBase.

Challenges which we faced :

  • This is our first project in which we are using GitHub. So when we did with the layout section my team decided to push and pull our code so that everyone will have the layout but while pushing our code on GitHub we lost some files and code so we had to write the code again.
  • While adding the functionality of add to cart we tried that using shared preferences but it shows many errors and not many. After spending 2 days with shared preferences we shifted to Realtime Database using Firebase.

Learning Points :

  • I learnt to debug our code
  • While building clone of Grofers applicaiton we face so many error and understood so many errors like ActivityNotFoundException, ClassCastException, INSTALL_FAILED_INSUFFICIENT_STORAGE, NullPointerException,R.layout.main Cannot Be Found, NetworkOnMainThreadException but now we understood it and if we fase these kind of error in the future instead of reading code line by line we can go the specific function and can resolve it.
  • How to work and cummunicate with a team properly.
  • How to be more efficient and productive at a same time.

For more Details you can go to my GitHub : https://github.com/AdityaCheke291/Grofers

Thank for Reading :)

--

--