Friday, July 27, 2018

How to reprogram your mind for SUCCESS!

How to reprogram your mind for SUCCESS!



We all know what is brain? An organ which is responsible for controlling and coordinating our mental and physical actions. But if I ask you what is mind? Then some will say it' some where in  brain , some heart and some will any other part of body but this all is wrong. Because our mind is not a physical object to which you can point and say this is mind. Our mind is formless which makes us aware and let's us understand objects in world. 

In psychological level mind is divided into 3 parts: 
1. Conscious mind
2. Subconscious Mind
3. Unconscious mind 

For now I am going to explain  Conscious mind and Subconscious Mind.

Conscious mind is our active mind which makes decisions by analysing logically, planning ,with focus. But some decisions we don't take by conscious mind because this decisions are taken by our Subconscious Mind.

Subconscious Mind makes decisions from our emotions, habits,& past experiences.
Let's take an example to understand the difference between both.
when we are learning how to drive a car, we are driving "consciously" - every action is a "conscious" action - like changing gears, applying brakes, turning and so on.  After a few years of driving experience, we drive the car subconsciously.  The feet are doing their job, the hands theirs, and we are usually relaxed.
Our conscious mind is only 10% of our mind and subconscious mind uses 90% of our mind.
Just like an iceberg which seems small at the top but inside water it's big enough. Top can be compared as conscious mind and the part in the water with subconscious mind.
Subconscious Mind has  huge power which can change your life if you REPROGRAM it. With this  video you can learn to reprogram you subconscious mind for SUCCESS. Thank you!


Youtube channel video url : https://youtu.be/SdSKDd5RyBA


Tuesday, July 24, 2018

CocoaPods was not found "When add remove plugin in ionic"

UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): CocoaPods was not found. Please install version1.0.1 or greater from https://cocoapods.org/

Issue : Some ionic plugins needs CocoaPods for the iOS platform



To resolve this issue you need to run below command in your project :

sh-3.2# pod setup

If you get "pod: command not found" error, You need to install pod in your project. To install pod use this command in your project :  

sudo gem install cocoapods

If you get an error like this "You cannot run CocoaPods as root", Please run above without root (without doing login in your terminal)

Note: This command will take time to install cocoapods.

Now, after completion of "cocoapods" installation, Run below command in your project to setup pod :

pod setup

If you get an error like this "You cannot run CocoaPods as root", Please run above without root.


Wednesday, July 18, 2018

How to start a startup

How to start a startup in hindi


Zero to One : Notes on Startups or How to Build the Future by Peter Thiel ➤ Summary 




Youtube channel video url : https://youtu.be/lsyjiOq7keU  



Have you ever wondered how Google,Apple,Amazon etc became so successful and what diffrentiate these successful companies  from other companies. Author Peter Theil the cofounder of PayPal teaches in zero to one how we can create a successful business or startup and can change the world. Here is the summary of the book.

1) Progress from Zero to One :

Every movement in business happens once. The next Bill gates will not build an operating system. The next Mark Zuckerberg won't create a social networking site. Similarly the next Larry page won't create a search engine.
So, if you are coping them, then you are not learning from them. 
When you copy something that already exists you go from 1 to n. But when you create something new and unique that no one ever created you go from 0 to 1.
Ex: if at the time of typewriters you thought of creating a better and more iterations typewriter then you have gone from 1 to n , also called horizontal progress.
But if you thought of creating a computer word processor then you had gone from 0 to 1, also called vertical progress.
In vertical progress nothing is copied.
Like the successful companies Google, PayPal etc they got success because of their unique ideas and work.

2) Competition or Monopoly :

In 2013 Apple's market capatilization was $500 billion and Google , Microsoft combined was 467$ billion. Three years ago both  google and Microsoft was way ahead from Apple but because of competition they compited, and Apple won. Competition doesn't  encourages us for betterment but it reduces our power and gives loss. So avoid compotition for success. For getting success find a market where competition is less.
Opposite of competition is Monopoly. Monopoly means being the best in your work so that everyone comes to you only. The company do so much better that no one else can survive.
Google is a great example of monopoly.
If I tell you to search something then you will definitely Google it. 

So for a Successful Startup remember to create something new and become best in your field.

Monday, July 16, 2018

Vimeo video upload in ionic 2 | ionic 3 | ionic 4

How to upload video on vimeo from ionic :

In this artical i will explain how to upload video on vimeo from ionic 2 | ionic 3 | ionic 4 app. This is very simple process, Just make sure you should have knowledge about Camera, File, FileTransfer plugins. With this plugins we will upload videos on vimeo.


First you need to create app on vimeo.com. After creation of app you’ll get a Client ID and Client Secret for your application you create.
Register a new application : https://vimeo.com/log_in

Please follow below steps to generate authorization :

1. Get your API key : You’ll need a Client ID and Client Secret for each application you create. To create a key, you’ll need to supply vimeo with some basic information about your application. Don’t worry if you’re not sure about all of the information, you can always edit it later.

2. Get an access token : To make API requests you will need an Access token. If you want to make requests on behalf of a user, that token must be authenticated. You can generate access token from vimeo for selected app.



Now we will start to integrate vimeo video upload in our ionic app :

Step 1: Install camera, file and file transfer plugins by using below ccommand 

 $ ionic cordova plugin add cordova-plugin-camera
 $ npm install --save @ionic-native/camera

 $ ionic cordova plugin add cordova-plugin-file
 $ npm install --save @ionic-native/file

 $ ionic cordova plugin add cordova-plugin-file-transfer
 $ npm install --save @ionic-native/file-transfer


Step 2: Import plugins in page 

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { Camera, CameraOptions } from '@ionic-native/camera';
import { Http, Headers, RequestOptions } from '@angular/http';
import { FileTransfer, FileUploadOptions, FileTransferObject } from '@ionic-native/file-transfer';
import { File } from '@ionic-native/file';


Now add plugins in provider list :

@Component({
  selector: 'page-home',
  templateUrl: 'home.html',
  providers: [Camera,File, FileTransfer]
})

Add plugins in constructor :

constructor(public navCtrl: NavController,private camera: Camera, public http:Http, private transfer: FileTransfer, private file: File) {

  }


Step 3: Add code to select video from mobile by using camera plugin 

selectVideo(){
    
const options: CameraOptions = {
 quality: 100,
 allowEdit:true,
 destinationType: this.camera.DestinationType.FILE_URI,
 sourceType: this.camera.PictureSourceType.PHOTOLIBRARY,
 mediaType: this.camera.MediaType.VIDEO,
 saveToPhotoAlbum: true
}

this.camera.getPicture(options).then((imageData) => {
// imageData is either a base64 encoded string or a file URI
// If it's base64:
let base64Image = 'data:image/jpeg;base64,' + imageData;
this.currentVideo = imageData;
this.generateVideoUploadUrl();
}, (err) => {
// Handle error
});

}

Note : On vimeo we need to follow 2 steps for video upload. First we need to generate video upload url then we need to upload video on that url.

Step 4: Now generate upload video url from vimeo

generateVideoUploadUrl(){

let url='https://api.vimeo.com/me/videos';
 let params ={
   "upload" : {
     "approach" : "post",
     "redirect_url" : ""
 },
 "name" : "My Video",   // video name
 "privacy" : {
     "embed" : "private"       // public for public video
 }
};
 
 let headers = new Headers({ 'Authorization':'Bearer XXXXXXXXXXXXXXXXXXXXXXX(Access Token)','Content-Type': 'application/json','Accept':'application/vnd.vimeo.*+json;version=3.4' });
 let options = new RequestOptions({
   headers: headers
});

let repos = this.http.post(url, params, options).subscribe(
 data => {
   let res = data.json();
   console.log(JSON.stringify(res));

   let url = res.upload.upload_link;
   this.uploadVideo(url);
 },
 err => {
   console.error("Error : " + err);
 },
 () => {
   //this.commonMethod.hideLoader();
   console.log('getData completed');
 }
);
}


Step 5: Upload video on vimeo 

uploadVideo(url){

const fileTransfer: FileTransferObject = this.transfer.create();
let fileName=this.currentVideo.substr(this.currentVideo.lastIndexOf('/')+1);

let options: FileUploadOptions = {
 fileKey: 'file',
 fileName: fileName, 
 httpMethod: 'PUT',
 headers: {'Authorization':'Bearer XXXXXXXXXXXXXXXXXXXXXXX(Access Token)','Tus-Resumable':'1.0.0','Upload-Offset':'0', 'Content-Type': 'application/offset+octet-stream' }
};

fileTransfer.upload(this.currentVideo, url, options)
.then((data) => {
 // success
 console.log('s='+JSON.stringify(data));
}, (err) => {
 // error
 console.log('f='+JSON.stringify(err));
});




It's done. Please check video on vimeo. 


This is the full code for your TS file :

import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { Camera, CameraOptions } from '@ionic-native/camera';
import { Http, Headers, RequestOptions } from '@angular/http';
import { FileTransfer, FileUploadOptions, FileTransferObject } from '@ionic-native/file-transfer';
import { File } from '@ionic-native/file';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html',
  providers: [Camera,File, FileTransfer]
})

export class HomePage {
  public currentVideo:any;
  constructor(public navCtrl: NavController,private camera: Camera, public http:Http, private transfer: FileTransfer, private file: File) {

  }

  selectVideo(){
    
const options: CameraOptions = {
 quality: 100,
 allowEdit:true,
 destinationType: this.camera.DestinationType.FILE_URI,
 sourceType: this.camera.PictureSourceType.PHOTOLIBRARY,
 mediaType: this.camera.MediaType.VIDEO,
 saveToPhotoAlbum: true
}

this.camera.getPicture(options).then((imageData) => {
// imageData is either a base64 encoded string or a file URI
// If it's base64:
let base64Image = 'data:image/jpeg;base64,' + imageData;
this.currentVideo = imageData;
this.generateVideoUploadUrl();
}, (err) => {
// Handle error
});

}
    
generateVideoUploadUrl(){

let url='https://api.vimeo.com/me/videos';
 let params ={
   "upload" : {
     "approach" : "post",
     "redirect_url" : ""
 },
 "name" : "My Video",   // video name
 "privacy" : {
     "embed" : "private"       // public for public video
 }
};
 
 let headers = new Headers({ 'Authorization':'Bearer XXXXXXXXXXXXXXXXXXXXXXX(Access Token)','Content-Type': 'application/json','Accept':'application/vnd.vimeo.*+json;version=3.4' });
 let options = new RequestOptions({
   headers: headers
});

let repos = this.http.post(url, params, options).subscribe(
 data => {
   let res = data.json();
   console.log(JSON.stringify(res));

   let url = res.upload.upload_link;
   this.uploadVideo(url);
 },
 err => {
   console.error("Error : " + err);
 },
 () => {
   //this.commonMethod.hideLoader();
   console.log('getData completed');
 }
);
}
    
uploadVideo(url){

const fileTransfer: FileTransferObject = this.transfer.create();
let fileName=this.currentVideo.substr(this.currentVideo.lastIndexOf('/')+1);

let options: FileUploadOptions = {
 fileKey: 'file',
 fileName: fileName, 
 httpMethod: 'PUT',
 headers: {'Authorization':'Bearer XXXXXXXXXXXXXXXXXXXXXXX(Access Token)','Tus-Resumable':'1.0.0','Upload-Offset':'0', 'Content-Type': 'application/offset+octet-stream' }
};

fileTransfer.upload(this.currentVideo, url, options)
.then((data) => {
 // success
 console.log('s='+JSON.stringify(data));
}, (err) => {
 // error
 console.log('f='+JSON.stringify(err));
});

}

}

Saturday, July 14, 2018

How to Achieve anything in life

Hello friend's this is an Animated summary of the book The Secret by Rhonda Byrne. Following the revolutionary success of the blockbuster best seller . The Secret comes an inspirational companion that offers a new way to bring joy and harmony to all aspects of life, every single day.

Remember, as one of the daily teachings says, “No matter where you are, no matter how difficult things may appear to be, you are always being moved toward magnificence. Always.”





Programming languages are used in today's most popular websites

1. Google Search

Google Search, commonly referred to as Google Web Search or simply Google, is a web search engine developed by Google. It is the most-used search engine on the World Wide Web, handling more than three billion searches each day. As of April 2018, it is the most used search engine in the US with 79% market share.

Website : https://www.google.com
Unique visitors per month (Popularity) : 1,600,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : C, C++, Go Java, Python, PHP (HHVM)
Database : Bigtable MariaDB
Notes : The most used search engine in the world



2. Facebook
Facebook is an American online social media and social networking service company based in Menlo Park, California. Its website was launched on February 4, 2004, by Mark Zuckerberg, along with fellow Harvard College students and roommates Eduardo Saverin, Andrew McCollum, Dustin Moskovitz, and Chris Hughes.

Website : https://www.facebook.com
Unique visitors per month (Popularity) : 1,100,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : Hack, PHP (HHVM), Python, C++, Java, Erlang, D, XHP, Haskell
Database : MariaDB, MySQL, HBase, Cassandra
Notes : The most visited social networking site


3. YouTube
YouTube is an American video-sharing website headquartered in San Bruno, California. The service was created by three former PayPal employees—Chad Hurley, Steve Chen, and Jawed Karim—in February 2005. Google bought the site in November 2006 for US$1.65 billion; YouTube now operates as one of Google's subsidiaries.

Website : https://www.youtube.com
Unique visitors per month (Popularity) : 1,100,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : C, C++, Python, Java, Go
Database : Vitess, BigTable, MariaDB
Notes : The most visited video sharing site


4. Yahoo!
Yahoo! is a web services provider headquartered in Sunnyvale, California and wholly owned by Verizon Communications through Oath Inc. The original Yahoo! company was founded by Jerry Yang and David Filo in January 1994 and was incorporated on March 2, 1995. Yahoo was one of the pioneers of the early Internet era in the 1990s.

Website : https://yahoo.com
Unique visitors per month (Popularity) : 750,000,000
Front-end (Client-side) : NodeJS, JavaScript
Back-end (Server-side) : C, C++, Java, PHP, GO, Ruby
Database : MySQL, PostgreSQL, HBase,Cassandra, MongoDB
Notes : Yahoo is presently transitioning to Node.js


5. Amazon (company)
Amazon.com, Inc., doing business as Amazon, is an American electronic commerce and cloud computing company based in Seattle, Washington that was founded by Jeff Bezos on July 5, 1994. The tech giant is the largest Internet retailer in the world as measured by revenue and market capitalization, and second largest after Alibaba Group in terms of total sales. The amazon.com website started as an online bookstore and later diversified to sell video downloads/streaming, MP3 downloads/streaming, audiobook downloads/streaming, software, video games, electronics, apparel, furniture, food, toys, and jewelry. The company also produces consumer electronics—Kindle e-readers, Fire tablets, Fire TV, and Echo—and is the world's largest provider of cloud infrastructure services (IaaS and PaaS). Amazon also sells certain low-end products under its in-house brand AmazonBasics.

Website : https://www.amazon.com
Unique visitors per month (Popularity) : 500,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : Java, C++, Perl
Database : Oracle Database
Notes : Popular internet shopping site

6. Wikipedia
Wikipedia is a multilingual, web-based, free encyclopedia that is based on a model of openly editable content. It is the largest and most popular general reference work on the Internet, and is named as one of the most popular websites by Alexa rank. It is owned and supported by the Wikimedia Foundation, a non-profit organization which operates on money it receives from its annual fund drives.

Website : https://www.wikipedia.org
Unique visitors per month (Popularity) : 475,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : PHP, Hack
Database : MariaDB
Notes : "MediaWiki" is programmed in PHP, runs on HHVM; free online encyclopedia.


7. Twitter
Twitter is an online news and social networking service on which users post and interact with messages known as "tweets". Tweets were originally restricted to 140 characters, but on November 7, 2017, this limit was doubled for all languages except Japanese, Korean, and Chinese. Registered users can post tweets, but those who are unregistered can only read them. Users access Twitter through its website interface, through Short Message Service (SMS) or mobile-device application software ("app"). Twitter, Inc. is based in San Francisco, California, and has more than 25 offices around the world.

Website : https://twitter.com
Unique visitors per month (Popularity) : 290,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : C++, Java, Scala, Ruby
Database : MySQL
Notes : Popular social network.


8. Bing (search engine)
Bing is a web search engine owned and operated by Microsoft. The service has its origins in Microsoft's previous search engines: MSN Search, Windows Live Search and later Live Search. Bing provides a variety of search services, including web, video, image and map search products. It is developed using ASP.NET.

Website : https://www.bing.com
Unique visitors per month (Popularity) : 285,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : C#
Database : Microsoft SQL Server
Notes : 


9. eBay
eBay Inc. is an American multinational e-commerce corporation based in San Jose, California that facilitates consumer-to-consumerand business-to-consumer sales through its website. eBay was founded by Pierre Omidyar in 1995, and became a notable success story of the dot-com bubble. eBay is a multibillion-dollar business with operations in about 30 countries, as of 2011. The company manages eBay.com, an online auction and shopping website in which people and businesses buy and sell a wide variety of goods and services worldwide. The website is free to use for buyers, but sellers are charged fees for listing items after a limited number of free listings, and again when those items are sold.

Website : https://www.ebay.com
Unique visitors per month (Popularity) : 285,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : Java, JavaScript, Scala
Database : Oracle Database
Notes : Online auction house


10. MSN
MSN (stylized as msn) is a web portal and related collection of Internet services and apps for Windows and mobile devices, provided by Microsoft and launched on August 24, 1995, the same release date as Windows 95.

Website : https://www.msn.com
Unique visitors per month (Popularity) : 280,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : C#
Database : Microsoft SQL Server
Notes : An email client, for simple use. Mostly known as "messenger".


11. Microsoft
Microsoft Corporation is an American multinational technology company with headquarters in Redmond, Washington. It develops, manufactures, licenses, supports and sells computer software, consumer electronics, personal computers, and services. Its best known software products are the Microsoft Windows line of operating systems, the Microsoft Office suite, and the Internet Explorer and Edge web browsers. Its flagship hardware products are the Xbox video game consoles and the Microsoft Surface lineup of touchscreen personal computers. As of 2016, it is the world's largest software maker by revenue, and one of the world's most valuable companies. The word "Microsoft" is a portmanteau of "microcomputer" and "software".

Website : https://www.microsoft.com
Unique visitors per month (Popularity) : 270,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : C#
Database : Microsoft SQL Server
Notes : One of the world's largest software companies.


12. LinkedIn
LinkedIn is a business and employment-oriented service that operates via websites and mobile apps. Founded on December 28, 2002 and launched on May 5, 2003, it is mainly used for professional networking, including employers posting jobs and job seekers posting their CVs. As of 2015, most of the company's revenue came from selling access to information about its members to recruiters and sales professionals.

Website : https://www.linkedin.com
Unique visitors per month (Popularity) : 260,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : Java, JavaScript, Scala
Database : Voldemort
Notes : World's largest professional network.


13. Pinterest
Pinterest is a web and mobile application company that operates a software system designed to discover information on the World Wide Web, mainly using images and on a shorter scale, GIFs and videos. The site was founded by Ben Silbermann, Paul Sciarra and Evan Sharp. Pinterest has reached 200 million monthly active users as of September 2017.

Website : https://pinterest.com
Unique visitors per month (Popularity) : 250,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : Django,[26] Erlang
Database : MySQL, Redis 
Notes : 


14. WordPress.com
WordPress.com is a blogging platform that is owned and hosted online by Automattic. It is run on a modified version of WordPress, an open source piece of software used by bloggers. This website provides free blog hosting for registered users and is financially supported via paid upgrades, "VIP" services and advertising.

Website : https://wordpress.com
Unique visitors per month (Popularity) : 240,000,000
Front-end (Client-side) : JavaScript
Back-end (Server-side) : PHP, JavaScript (Node.js)
Database : MariaDB, MySQL
Notes : 


Back-end states of most above websites : 


Reference source of above all (for this post) states and information  (Credit goes to wikipedia for all above states) : 



Monday, July 9, 2018

How to add Deep Linking in Ionic OR Deep Linking alternative for ionic

What is Deep Links :

In place of URLs, All mobile apps are operate by URIs (Uniform Resource Identifier). A deep link can trigger on a installed mobile app in users mobile.

Deep linking is very simply way for app developers to link or open specific pages within this mobile apps. With the help of deep linking, we can link one app to another app or any url to our app. i.e, sending users to store pages, store listings or specific deals.





Let's take a example :
A link to opens WhatsApp would look like this:
<a href="whatsapp://app">This will open WhatsApp</a>
<a href="whatsapp://send?text=Hello%20Dear">Send "Hello Dear" from WhatsApp</a>

There are a few things we have to consider before implementing this :
  • Is your app installed on the mobile?
  • Has the device setup to manage deep link correctly?

Here we will integrate deep link by two methods :

1. Install Deeplinks Plugin From Ionic :
We need to first install the Ionic native plugins in our project :

$ ionic cordova plugin add ionic-plugin-deeplinks --variable URL_SCHEME=myapp --variable DEEPLINK_SCHEME=https --variable DEEPLINK_HOST=myappurl.com --variable ANDROID_PATH_PREFIX=/
$ npm install --save @ionic-native/deeplinks


URL_SCHEME : This refers to the custom scheme the app will handle.
DEEPLINK_HOST : This refers to the domain the app will respond to.
DEEPLINK_SCHEME : This is the protocol the app will listen for, which most of the times is https as it’s required on iOS and Android.

Now import plugin in your TS file :
import { Deeplinks } from '@ionic-native/deeplinks';

Add in providers :
providers: [Deeplinks]

Add in constructor :
constructor(private deeplinks: Deeplinks) { }

Now add below code in your function to manage deep link :
this.deeplinks.route({
     '/about-us': AboutPage,
     '/universal-links-test': AboutPage,
     '/products/:productId': ProductPage
   }).subscribe(match => {
     // match.$route - the route we matched, which is the matched entry from the arguments to route()
     // match.$args - the args passed in the link
     // match.$link - the full link data
     console.log('Successfully matched route', match);
   }, nomatch => {
     // nomatch.$link - the full link data
     console.error('Got a deeplink that didn\'t match', nomatch);
   });
For detail information of this plugin click here.


2. Custom URL scheme Cordova/PhoneGap Plugin :This plugin allows you to open your app by clicking on URL, i.e myapp://path?res=reg

Install plugin by using below command :
$ cordova plugin add cordova-plugin-customurlscheme --variable URL_SCHEME=myapp


Add this code below import section. I.e,
import { NewUserPage } from '../pages/newUser/newUser';

(window as any).handleOpenURL = (url: string) => {
 (window as any).handleOpenURL_LastURL = url;
};


Add below code in construct :

// This code will override the open handler to navigate mobile app on further custom url scheme. Please check below code for this  
(window as any).handleOpenURL = (url: string) => {
setTimeout(() => {
this.handleOpenUrl(url);
 }, 0);
 };

// check if app was opened by custom url scheme
const lastUrl: string = (window as any).handleOpenURL_LastURL || "";
if (lastUrl && lastUrl !== "") {
delete (window as any).handleOpenURL_LastURL;
this.handleOpenUrl(lastUrl);
 }

Create function to handel deeplinking :
private handleOpenUrl(url: string) {
// custom url parsing, etc...
alert(url);
// navigate to page with reactive forms
// this.navCtrl.push(MyReactiveFormsPage, { param: "my param" });
 }


URL Scheme hints :
You need to take care of below points for URL_SCHEME.
  • Please don't use an already registered scheme like fb, twitter, etc.
  • Please use only lowercase characters.
  • Please don't use a dash - because on Android it will become underscore _.
  • Please use only 1 word (no spaces).

Thursday, July 5, 2018

Which Framework Is Better for Cross-Platform / Hybrid Mobile App Development? (Ionic Vs. React Native)

Ionic Vs. React Native

The objective of this post is to inform the most important differences between Ionic (2,3,4) and React Native, This artical will hopefully give you the information you need to make an educated choice about the stack that will work best for your project.

When you start to use new technology, you cannot be sure it will be the best solution. In some cases, some issues are through time duration and number of apps/projects. In this post, I am going to show a comparison between two frameworks, which are React Native and Ionic. I will explain based on my real time experience in app  development.
Now a days there are so many hybrid mobile frameworks are available, such as Ionic, NativeScript, React Native, Xamarin, PhoneGap. But according to me there are top 2 hybrid frameworks are available and which are — Ionic and React Native









Ionic Overview 
Ionic is an open source, cross-platform framework used to develop hybrid mobile applications. Ionic is a mobile app development framework based on the HTML5 programming language. The HTML5 framework always works with the help of Cordova or PhoneGap. Hence, Ionic needs both of them.
Ionic is the only mobile / hybrid app framework that easily allow web developers to build mobile apps for all major app stores and the mobile web with a single code base. And with Ionic’s Platform Continuity, your app looks and feels at home on every device. Ionic community has developed more than 4M ionic apps.

  1. Ionic has free & Open Source — 100% source code on Github
  2. Ionic is fully Cross-Platform  framework. Which can be used for IOS, Android,     Windows, Web, Desktop, PWA.
  3. Ionic is premier Native Plugins — Camera, Bluetooth, Push Notifications
  4. Ionic is first-class Documentation — Clear and Consistent




Advantages of the Ionic Framework
  1. Fast development-testing cycle.
  2. It cross-compiles to iOS and Android.
  3. It is platform independent whether it has to work with HTML, CSS, JS, or AngularJS.
  4. Ionic is easy to learn & work with.
  5. In ionic you can write code in TypeScript (like angular 2,3,4 code), which makes it easy if you are having experience of AngularJS 2/3/4.
  6. In ionic you can easily use TypeScript (like angular2) to develop applications for all platforms.
  7. You can access the native functionalities of your user’s devices with the plugin system.
  8. Angular itself is easier to learn & work with, for smaller projects than React.





React Native Overview

The goal of React Native framework is not to provide a way to write once, and run everywhere. Rather, React Native want all developers to use the components which is best for the native behaviors of the all platforms. For example, Android has a highly customizable toolbar but iOS does not have this. You can use the toolbar for Android but you need to use something different for iOS platform. 

React Native is a JavaScript library that is used to develop UI. React Native Framework is fully managed and maintained by a community of expert React Native developers and leading corporations, including Facebook and Instagram. It helps all mobile apps developers to reuse the code which is already used in any Android or iOS apps.

Advantages of React Native
  1. React Native framework is developed by a very good and strong community of developers and corporations, which helps all developers to make speed up the learning and development process of there application.

  2. React Native has response time that could be compared to native apps.
  3. React Native has ability to reuse the code parts (not all code) for desktop (web apps) and mobile (mobile apps) and even for the server. 
  4. React Native has quickly develop and debug the app functionality.
  5. React Native has big amount of elaborated components from Facebook.
  6. React Native has even bigger amount of components from community.
  7. React Native allows developers to reuse existing code, it makes it very speedy to deliver the apps.




Ionic vs. React Native:

If you want to select development tool for your hybrid app from these two options, You need to definitely familiarize yourself with the all key features that makes Ionic and React Native different with each other.

However, I can just tell you which one I batter. It is React Native. I personally suggest the native rendering more than the other things. According to me, Apps speed need to be extremely fast, smooth and responsive, Also in React Native, I have found a good compromise between writing pure native code, or pure hybrid apps. This is the best part of rect native.
Now, According to me my best advise to you is : You should try them out both and pick one which is easy to use according to your requirements and make the best out of it!