OverviewPikky is a great solution for those who need to quickly make a mobile app similar to Instagram, to post pictures and videos and build a nice community of media lovers, influencers or just funny people
DescriptionPikky is a full-working template (UI + Source Code) for sharing pictures and videos to the world, and find cool people to get in touch with.
Users can like, comment, and share posts on social networks, Mail, and SMS.
They can also edit their own profile, block inappropriate users, mute posts, turn comments off, and much more.
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 – IMPORTANT: You are NOT allowed to sell the original source code of this template anywhere due to copyright infringement.
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 posts from people you follow and yours too – In the Home screen, users and see a list of photos submitted by the ones they are following, as well as their own images.
Instant messaging feature – Privately chat with the people you like.
Check out interesting users – The Home screen shows a horizontal grid of suggestions for interesting people. They can be followed directly from this list.
Set Verified users – Only the Admin can do that, it’s just a boolean flag that needs to be set in the database.
Control Commenting – Poeple can tunr on and off comments for specific posts.
Edit/Delete Posts – Besides submitting images, Users can also edit or delete them later.
Moments – This feature is to record and share videos that can be viewed in the Home screen. They will get automatically deleted from the database after 24 hours.
Report Posts or people – Help the Admin on keeping the app clean by reporting abusive content or users.
Mute Posts – This option will hide posts from the selected Users.
Like, comment and bookmark Posts – These are the social experience that this application couldn’t miss.
Search by Tags, usernames or keywords – Many different ways to perform a search are offered in this template.
Custom Camera – Take square pictures or record videos within the app, then apply the filters you want to enhance them.
Add a caption, tags and current location to media while sharing them – Personalize pictures and videos with more info.
Notifications screen – People can check likes, comments and followers in this section.
See your Account’s info – A custom screen allows users to view their data.
Setting screen – from this page it’s possible to reset a password, see liked and bookmarked posts, a list of blocked users, and set Push Notifications on/off.
Google sign in – Quickly sign in with Google from the Intro screen.
Push Notifications – Users will receive Push Notifications for likes and comments
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 a free 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 'Search.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 withint the saving function
- Edited all the calls of the 'XSObject()'' function in the swift files where such call is present
August 27, 2020
- Fixed a bug in the 'Follow.swift' file -> 'followButt()' by replacing userObj with currentUser.
- Edited the 'refreshData()' function, still in the in the 'Follow.swift' file
- Edited the 'showPostDetails()' function in the 'PostDetails.swift' file
- Edited the 'followButt()' function in the 'UserProfile.swift' file by adding an HUD() while tapping the Follow button
August 25, 2020
- Fixed a small bug by editing the 'func followButt()' function in the following files:
let USERS_USERNAME_LOWERCASE = "ST_usernameLowercase"
from the 'XServerSDK.swift' file, as well as its instance in the SignUp.swift and Intro.swift files (it's not needed in the database)
August 12, 2020
- Wrapped the code of the 'showUserDetails()' function in the UserProfile.swift file into an 'XSRefreshObjectData()' function, in order to always get the updated 'userObj' object while entering a user's profile.
- Edited the InterestingPeople.swift file by adding the 'viewDidAppear()' function
- Edited the 'viewDidLoad()' functin of the Follow.swift file
July 20, 2020
- Moved some code out of the 'XSGetPointer()' function from the 'cellForRow atIndexpath()' function in Home.swift
In this way images get loaded faster while scrolling down
July 15, 2020
** MAJOR CHANGE **
Replaced Parse Server with the XServer backend: https://xserver.app
Please read the Documentation and this page for more info