Home » All » Pikky | Android Instagram-like Social Media Application



Pikky | Android Instagram-like Social Media Application - 1
Pikky | Android Instagram-like Social Media Application - 2
Pikky | Android Instagram-like Social Media Application - 3
Pikky | Android Instagram-like Social Media Application - 4


Pikky 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

Pikky | Android Instagram-like Social Media Application - 5

Read Mobile and Web tutorials online

Download the demo APK of Pikky

* In case your device will show a Toast message saying “Can’t open file”, just download the Astro File Manager app here: https://play.google.com/store/apps/details?id=com.metago.astro&hl=en
and use it to install the APK. This may happen because of new Android Security options *

iOS version of Pikky app

Online documentation of Pikky template

Pikky | Android Instagram-like Social Media Application - 6
XSApp is a HTML/CSS theme to create your awesome App Landing Page in no time. Clean, modern design, different header colors, easy to customize.

Pikky | Android Instagram-like Social Media Application - 7

Pikky | Android Instagram-like Social Media Application - 8

Pikky | Android Instagram-like Social Media Application - 9

Pikky | Android Instagram-like Social Media Application - 10
VintyMag is a complete Magazine/Newspaper WordPress Theme where you can showcase your blog news in an old-fashioned look. It is easy to install and configure, and it has got 4 different Home and Categories layouts.

Pikky | Android Instagram-like Social Media Application - 11

Pikky | Android Instagram-like Social Media Application - 12

Pikky | Android Instagram-like Social Media Application - 13


Pikky 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 to 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 (Parse Dashboard).
• Keep an eye to the Change Log on the bottom of this page when an update gets released.


It’s backend is by Parse Server and it’s hosted on back4appNO MySQL database involved.
Parse Server is flexible, reliable, open source, based on Node.js and well supported by a large community of developers, and back4app is a great BaaS hosting website where you can configure your database, Push Notifications and other features in just a few clicks.

If you want to see a preview of the structure of the demo database, and also clone it in just a click, CLICK HERE!

If you want to use a nice Admin Panel to manage data of your database instead of the Parse Dashboard, sign up for a FOREVER FREE account on Adminca.com and watch this video to see how to create a Panel for your Parse App.

Extended License

As 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 or share the original source code of this template anywhere due to copyright infringement


Java/XML language – Native Android Studio project – Edit the template as you wish with the power of Android Studio and Java code.

Android 5.0 and above, Universal – Run your app on about 80% of Android devices

Backend with Parse Server hosted on back4app – 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 back4app, as well as edit the Parse Server’s SDK code.

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 Parse Dashboard – 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.

Terms of Use and Privacy Policy HTML file (GDPR compliant) – The template contains a ‘tou.html’ file the Admin can edit to display his Terms of Service to the app’s folks.

Facebook login – Quickly log in or sign up with Facebook from the Intro screen.

Push Notifications – With the aid of Parse Push, users will receive 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.


The latest official version of Android Studio – 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 AS (download it here. You must use it and avoid Betas.

An Apple Mac or Windows computer, updated to its latest OS version – It’s always good to keep your computer’s OS up to date, technology keeps growing and I follow its changes, as well as updating my templates every time a new OS gets released.

A Google Play Developer Account – This is needed for you to publish apps on the Play Store. You can still edit and test this template on Android Studio without that account though.

Basic knowledge of Android Studio and Java/XML 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 Play Store.

A free account on back4app.com – You can create and edit your Parse App and database, get the necessary keys for configurations and test this template for free. It has limitations though, so please check the Pricing table and consider subscribing for a paid plan after your app got published on the App Store.

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 Play Store – Emulators 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 Google’s official Guidelines.

Change Log

December 23, 2019

- Updated the 'main.js' file to compile with the latest Parse Server 3.x version | Remember to update the Parse Server version of your app on back4app from the 'Manage Parse Server' section!

December 17, 2019

- Updated the 'main.js' file to compile with the latest Parse Server 3.x version.
1. Update your Parse Server to the latest version (currently it's 3.9.0) from the 'Manage Parse Server' section of your Parse App on back4app- unless you already have the latest version selected.
2. Upload the updated 'main.js' file into the 'Cloud Code Function' section of your app on back4app, overwrite the existing one and Deploy it.

December 10, 2019

- Updated to Android Studio 3.5.3
- Updated:
    compileSdkVersion 29  
    targetSdkVersion 29
in the 'build.gradle' file.

September 30, 2019

- Updated to Android Studio 3.5.1

September 30, 2019

- Edited the Comments.java file by adding the missing code inside the 'likeButt.setOnClickListener()' and 'reportButt.setOnClickListener()' functions. 
- Added the follwing lines inside the 'postCommentButt.setOnClickListener()' function as well: 
    // Recall query
    skip = 0;
    commmentsArray = new ArrayList<>();

September 30, 2019

- Edited the SignUp.java file -> 'signupButt.setOnClickListener()' function, in order to create a lowercase string of the username by adding this line:
    currentUser.put(USER_USERNAME_LOWERCASE, usernameTxt.getText().toString().toLowerCase());

- Edited the newMessage.java file -> 'queryUsers()' function, in order to search for the lowercase string of a username by adding this line:
    query.whereContains(USER_USERNAME_LOWERCASE, searchStr); 

- Edited the Intro.java file -> 'getUserDetailsFromFB()' function, in order to store a lowercase string of the username by adding this line:
    currentUser.put(USER_USERNAME_LOWERCASE, username.toLowerCase()); 

- Added this lie in Configurations.java:
    public static String  USER_USERNAME_LOWERCASE = "usernameLowercase";

*** IMPORTANT: If this is an update for you, please follow these steps:
1. Perform the changes, update your old code, then run the app on your device.
2. Sign up as a new user, in order for the app to create a new column in your Parse Dashboard called 'usernameLowercase'
3. Kill the app and enter your Parse Dashboard -> User class
4. Search for that new column. You'll see that all the cells of that column are empty (undefined).
5. Now you must manually type the lowercase string of the user's row in the empty cells - just copy the value of the 'username' cell into the 'usernameLowercase' empty cell and, in case the username has some capital letter, make it lowercase.
EXAMPLE: a user has signed up with a username like 'JohnDoe'. Copy it, paste it in the empty cell of its 'usernameLowercase' column and transform it as 'johndoe' 

September 23, 2019

- In the 'swipeSection.findViewById(R.id.cnotDeleteButt).setOnClickListener()' function of the 'Notifications.java' file, I've replaced:


- Added the following global variable in Configurations.java:
    public static int screenWidth;

- In EditImage.java -> 'onCreate()' function, I've removed this piece of code:
    if(height == 0) 
        height = W;
        height = View.MeasureSpec.getSize(displayMetrics.heightPixels);

and set W to this variable:
    lp.height = W;

- In the 'setUpCameraOutputs()' function, inside the SquareCamera.java file, I've replaced this line:
    mPreviewSize = chooseOptimalSize(map.getOutputSizes(SurfaceTexture.class), rotatedPreviewWidth, rotatedPreviewHeight, maxPreviewWidth, maxPreviewHeight, largest);
with this one:
    mPreviewSize = new Size(screenWidth,screenWidth);

- Edited the 'getBitmap(String path)' function by removing this line:
    Bitmap.createScaledBitmap(scaledBm, 640, 640, true);

and by changing 640 into 1024 in this line:
    final Bitmap scaledBm = scaleBitmapToMaxSize(1024, bm);

August 22, 2019

- Updated to Android Studio 3.5
- Added this code into the 'onCreate()' function of the 'SquareCamera.java' file, in order to get a square preview view for the camera:
        // Set size of the camera's TextureView
        RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(W, W);
        lp2.setMargins(0, 0, 0,0);
        lp2.addRule(RelativeLayout.BELOW, topView.getId());

July 17, 2019

- Updated to Android Studio 3.4.2

June 20, 2019

- Installed 'Android 9.0 (Pie)' Platform form the Android SDK Manager (you should do the same in your Android Studio in case you haven't done that yet, and the perform the updates below).
- Edited build.gradle (Module: app) file by setting the 'compileSdkVersion and 'targetSdkVersion' into 28
- Did: Refractor -> Migrate to AndroidX, so after doing the suggested Refractor, some dependencies changed in the build.gradle (Module: app) file, compare your old files with the updated ones.
- Updated some dependencies in build.gradle(Module: app) file, compare your old build.gradle file with the updated one to perform updates
- Replaced:
    import com.parse.ParseFacebookUtils;
    import com.parse.facebook.ParseFacebookUtils;
in Configurations.java and Intro.java

June 7, 2019

- Updated to Android Studio 3.4.1

May 6, 2019

- Updated to Android Studio 3.4
- Updated some dependencies in build.gradle to their latest versions
- Added this line into build.gradle (Module:app), in order to display Alerts:
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:27.1.1'

February 22, 2019

- Fixed a bug on Push notifications by editing the following files:
    build.gradle (Module:app)
    Home.java -> 'onStart()' function.

- Updated the 'main.js' file, so you have to upload it again into your own Cloud Code Functions section on back4app and overwrite the existing one, then click the DEPLOY button.

** In order to update your app, compare the updated files mentioned above with your own ones and perform the changes accordingly **  

February 8, 2019

- Updated to Android Studio 3.3.1
- Updated the 'build.gradle(Project:)' and 'build.gradle(Module:app)' files 
[compare the updated code with your old code and perform changes accordingly]

January 24, 2019

- Updated to Android Studio 3.3

January 3, 2019

- Updated the Facebook Android SDK and ParseFacebookUtils versions in build.gradle:
    implementation 'com.facebook.android:facebook-android-sdk:4.37.0'
    implementation 'com.parse:parsefacebookutils-v4-android:[email protected]'

November 7, 2018

- Just changed the Documentation design 

November 5, 2018

- Edited the 'optionsButt.setOnClickListener()' function in UserProfile.java, in order to fix a Block/Unblock bug on the options alert.
- Edited SearchScreen.java file

October 24, 2018

- Edited the SearchScreen.java and search_screen.xml files, in order to show popular tag buttons on the top of the screen and make them search for posts with the selected keyword on click.
- Added these lines of code where the queryPosts() gets called in SearchScreen.java:
      postsArray = new ArrayList<>();
      skip = 0;

- Edited the 'queryPosts()' function.
- Added 8 images into the 'drawable' folder
- Removed all 'Configurations.' instances in all .java files, since I've imported them in the import list on the top of all .java files

October 19, 2018

- Updated to Android Studio 3.2.1
- Added this piece of code into Manifest.xml:
   <!-- AdMob -->

- Added this line into the 'showAdMobInterstital()' function in Configurations.java:
     MobileAds.initialize(ctx, ctx.getString(R.string.ADMOB_APP_ID));

- Added this line into strings.xml:
     <string name="ADMOB_APP_ID">ca-app-pub-7337790155065092~8384194898</string>

- Updated the Documentation
- Fixed a bug in the Search Screen when loading more than 100 posts by adding this variable on the top of the SearchScreen.java file:
    int skip = 0;
    List<ParseObject>postsArray = new ArrayList<>();

and by editing the 'queryPosts()', 'showDataInGridView()' and 'onRefresh()' functions (just compare your old functions with the updated ones and perform changes in your code)

- Removed the AdMob call into 'onCreate()' in the SearchScreen.java:


For any support requests, please contact me through my Profile’s Contact Form

Rate my Work

Your support is always greatly appreciated, from comments to product’s reviews, so please click here to rate your purchases!

Flag Counter