OverviewBazaar is a great solution for those who need to quickly build a mobile app where people can list their used or new items for sale, and the community can browse ads and chat with products owners to agree on payments and purchases
DescriptionBazaar is a full-working template (UI + Source Code) to post and browse Ads from any location in the world, and find cool stuff for sale.
People can like and share items on social networks, as well as chat with sellers to discuss price, shipping, or simply get more info about the products.
The iOS, Android and PHP versions can share the same database!
The Admin should daily check the database for reported content/users, and take action for it.
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.
• 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 stuff from people you follow and don’t, and yours too – From the Home screen, you can search for ads from any place, use the built-in Map to select your location – you must allow it on your browser – or search for an address to fetch listings.
Chat with sellers – Ads owners can get private messages from interested users and reply in real time.
Change location on a custom Map – To either post ads or browse them, you can select a location by opening up the Map and move it to place the pin and search for products. You can also type a custom address or city name and select the distance range.
Email verification – After signing up, people will get an email with a validation link. Users with a verified address will be displayed in their profile pages.
Edit/Delete your own Ads – From the Listing Info page, people can choose to delete or edit their items with the 3-dot options button.
Report inappropriate listings or people – Users are able to flag offensive content/sellers, the Admin must daily check the database to see what has been reported and take action for it.
Like listings – Save favorite ads by liking them, you can find them in your Account screen -> Liked section. Search listings by keywords – Keywords search is essential, so you can perform it to find what you need around the selected location.
Notifications screen – Check likes and followers in this section, and get to users profiles.
See your Account’s info – The Account screen is where you can enter the settings and see what ads you have posted, sold or liked.
Settings page – Edit your profile, avatar picture and biography, or logout the website.
Google Sign in – People can quickly sign with their Google account from the Intro page.
Push Notifications – People get Push messages for likes, follow and chat messages.
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.
Sep 2, 2021 - Fixed a small bug by editing the ‘postItemButt()’ and adding a function called ‘prepareForSave()’ in the ‘ListItemInfo.swift’ file
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 the 'requestATTPermission()' function 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
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.
January 30, 2021
- Edited the 'XSCurrentUser()' and 'XSGetPointer()' functions in the 'XServerSDK.swift' file
January 26, 2021
- Edited the 'citiesList' array in the 'XServerSDK.swift' file by adding a first mandatory element:
"All US Cities"
- Edited the IF statements of the 'queryItems()' function in the 'Listings.swift' file
- Edited the 'viewDidLoad()' and 'locationButt()' functions in the 'ListItemInfo.swift' file
In this way, users can search for items in all cities of the 'citiesList' array
December 16, 2020
- Added some code in the 'deleteItemButt()', in order to make the app delete Chats and Messages related to a deleted Item.
September 25, 2020
- Updated to Xcode 12
- Moved this line out if its IF statement in the 'ItemInfo.swift' file:
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 within the saving function
- Edited all the calls of the 'XSObject()'' function in the swift files where such call is present
July 10, 2020
** MAJOR UPDATE **
- Redesigned UI and code
- Changed the backend from Parse Server into XServer
July 30, 2018
- First release, iOS 11.0 and above - Native Xcode project, Swift language - Compatible with all iOS devices