Grocery is a great solution for those who want to quickly build an app to sell food from your Market and delivery it to buyers, even if you don’t know how to code
DescriptionGrocery is a full-working template (UI + Source Code) where a grocery owner can sell his food and deliver it to buyers’ home place, or have them pick it up from his market’s location.
Users can create an account and log in with their own favorite credentials, save favorite products, and buy them with Credit Card or Cash on Delivery/Pick up.
They can also anytime edit their profiles, as well as reset their password and check the Terms Of Service page.
The design is clean, code is commented and project folders and files are well organized in the package.
• Check out the Features section below to see what this app does.
• Read the online Documentation to learn how to configure the template’s features and the database (Parse Dashboard).
• Check out the demo Database, login as:
• Keep an eye to the Change Log on the bottom of this page when an update gets released.
BackendThe backend of this template is XServer, so you can either buy the XServer REST API an install it on your own VPS server, or create an account on XServer.app and a Database for this app.
After performing the configurations mentioned below, you will run the app and see no content, so Sign Up with a test user in order to create a test account and start testing the app.
NOTE: in case you want to implement your own backend to this template, you do not need to buy the XServer API, nor create an account on XServer.app, but please be aware that implementing a different backend to this template must be performed by you or your developers.
Extended LicenseAs per Envato Marketplace Terms, the Extended License applies to all applications that charge money to their users. In case your users will not be charged of money through your own version of this app, you can still buy it under a Regular license.
Therefore, you must buy this template under and Extended License if your plans are either one or more of the following:
- Add In-App Purchase or any other Payment Gateway in the source code and publish the app for free on the App/Play Store – NOTE: If you want to publish your own version of this application for FREE only, then you can still buy it under a Regular License.
- Publish this application as a PAID app on the App Store.
- Transfer the live app of your own verison of this app on the App/Play Store to another owner by selling your ownership on flippa.com or similar marketplaces.
FeaturesiOS Swift language – Native Xcode project – Edit the template as you wish with the power of Xcode and Swift.
Storyboard, iOS 11.0 and above, Universal – Run your app on all iOS devices
Backend with XServer – Built on a great and reliable BaaS that offers many features with just a few clicks, it’s super easy to create and set up a database on XServer.app, as well as use the XServer REST API hosted on your VPS server.
Browse products in the Home screen – Buyers can find the items they want to buy, search them by Category or keywords, view their info, and add them in your Bag (the Cart).
Stripe SDK integrated – Buyers can checkout their Bag and choose to pay Cash on delivery/pick up, or pay with Credit Card (the Admin will need a verified Stripe account).
Like Products – Once you like a product, it goes to the Liked products screen, so you can quickly access them and add them to your Bag for future purchases.
Account screen with Orders list – The account screen shows your profile photo, full name and a list of the Orders you’ve made.
Admin -> Manage Orders on the device – Besides managing buyers orders on the Database with a PC, you can access Orders on the app by logging in as ‘admin’. You, as the Admin of the app, will then be able to set Orders status, view buyers’ location on a Map, and contact them. This is useful in case the delivery guy needs to update orders on the way.
AdMob Interstitial ads – Get some revenue from full-screen advertisement banners.
Modern, clean design – The UI has been carefully crafted to offer the best user experience to your clients.
Online Documentation – Read the extensive guide of this template to be able to configure it properly.
PSD icons included in the package – App and buttons icons are stored into a PSD folder, for easy image replacement.
RequirementsThe latest official version of Xcode – Beta versions of an IDE usually never work 100% properly, and the code of this app has been written using the latest official version of Xcode and you can download it from the Mac App Store. You must use it and avoid Betas.
An Apple Mac computer, updated to its latest OS version – It’s always good to keep your macOS up to date, technology keeps growing and I follow its changes, as well as updating my templates every time a new OS gets released.
An Apple Developer Account with an active iOS Development Program – This is needed for you to publish apps on the iTunes App Store. You can still edit this template on code without that account, but you won’t be able to run it on your real iOS device since you’ll need a Team ID.
Basic knowledge of Xcode and Swift language – You don’t need to be a skilled or professional developer, anyway it’s recommended to have at least the basic knowledge of what you’re dealing with, in order to be able to customize this template and publish your applications on the App Store.
XServer API – You can either create an account and a Database on XServer.app, or buy the XServer REST API and host it into your own VPS server.
An active AdMob account – Unless you want to remove ads in this app, you need to sign up for an AdMob account to display them.
A real device to test the app before submitting it to the App Store – iOS Simulators may fail during tests, they are not reliable as a real device is, so I strongly recommend you to always run this application on a real phone/tablet. This is also suggested by Apple’s official Guidelines.
May 5, 2021
- Added the following keys and descriptions in the 'Info.plist' file:
• Privacy - Tracking Usage Description
** Here's a screenshot for your reference: https://i.postimg.cc/156kd2jc/att-infoplist.png **
- Imported these frameworks in the 'XServerSDK.swift' file:
- Added a function called 'requestATTPermission()' in the 'XServerSDK.swift' file
- Called that function into the 'viewDidLoad()' function of the 'Home.swift' file:
April 20, 2021
- Updated the AdMob framework files to version 8.3.0 (in the Frameworks folder)
- Edited the 'fireInterstitialAd()' function in the 'XServerSDK.swift' file
- Removed the GADInterstitialDelegate instances in the files where they are present
February 8, 2021
- Edited the 'XSSignUp()' and 'XSObject()' functions in the 'XServerSDK.swift' file, in order to get an aray of parameters and perform better API calls
- Added 2 more extensions in the 'XServerSDK.swift' file
- Edited all the 'let params' and 'var params' arrays in all the Swift files where they are present, in order to match the new code of the SDK and allow you to save the '&' character in a String column of your database.
February 1, 2021
- Edited the 'XSCurrentUser()' and 'XSGetPointer()' functions in the 'XServerSDK.swift' file
September 25, 2020
- Updated to Xcode 12
- Moved this line out if its IF statement in the 'ProductInfo.swift' and 'LikedProducts.swift' files:
DEFAULTS.set(adCount, forKey: "adCount")
September 11, 2020
- Edited the 'XSObject()' function in the 'XServerSDK.swift', now it can retrieve the saved data as a JSON object, so it can be used withint the saving function
- Edited all the calls of the 'XSObject()'' function in the swift files where such call is present
July 5, 2020
- Fixed a small bug by adding this line in the 'optionsButt()' function of the 'Account.swift' file:
self.manageOrdersButton.isHidden = true
July 3, 2020
- First release, iOS 11.0 and above
- Native Xcode project, Swift language
- Compatible with all iOS devices