{"id":2681,"date":"2019-04-08T14:25:59","date_gmt":"2019-04-08T14:25:59","guid":{"rendered":"https:\/\/ionicframework.com\/?p=2681"},"modified":"2020-10-15T22:33:13","modified_gmt":"2020-10-15T22:33:13","slug":"phonegap-devs-its-time-to-embrace-a-ui-framework","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework","title":{"rendered":"PhoneGap Devs: It&#8217;s Time to Embrace a UI Framework"},"content":{"rendered":"<p>PhoneGap (and later Adobe PhoneGap &amp; <a href=\"https:\/\/ionicframework.com\/resources\/articles\/what-is-apache-cordova\" target=\"_blank\" rel=\"noopener\">Apache Cordova<\/a>) emerged back in 2009 as a major evolution in app development. It allowed web developers like myself to reapply their web skills to create native mobile experiences for Android, iOS, and other platforms. In fact, I&#8217;ve been a long-time PhoneGap developer that loves the platform&#8217;s power and potential.<\/p>\n<p>Even before I joined the Ionic team, one of the things I learned quickly was the importance of pairing Cordova\/PhoneGap with a cross-platform UI framework like Ionic. In this post, I&#8217;ll share a few key reasons why every PhoneGap developer should be using Ionic (or something similar) to build their next mobile app.<\/p>\n<p><!--more--><\/p>\n<h2>Why PhoneGap and Ionic?<\/h2>\n<p>PhoneGap powers the capabilities that permit web code to run when embedded into a native app shell, as well as accessing native device features (camera, Bluetooth, etc.) using JavaScript.<\/p>\n<p>While all of this is great, it&#8217;s what PhoneGap <em>doesn&#8217;t give you<\/em> that we are going to talk about today. When it comes to PhoneGap, the big thing that&#8217;s missing from the puzzle is the rest of the SDK and UI infrastructure that you need to build a high-performing, native-like app. Things like gestures, animations, modals, and button components. The technology also doesn&#8217;t offer built-in navigation or scrolling features\u2014You&#8217;ll have to build all that yourself or use a UI toolkit.<\/p>\n<p><a href=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1270\" height=\"1032\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison.png\" alt=\"Native SDKs vs PhoneGap\" class=\"aligncenter size-full wp-image-2713 lazyload\" data-srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison.png 1270w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison-300x244.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison-768x624.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison-1024x832.png 1024w\" data-sizes=\"auto, (max-width: 1270px) 100vw, 1270px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 1270px; --smush-placeholder-aspect-ratio: 1270\/1032;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"1270\" height=\"1032\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison.png\" alt=\"Native SDKs vs PhoneGap\" class=\"aligncenter size-full wp-image-2713\" srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison.png 1270w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison-300x244.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison-768x624.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-comparison-1024x832.png 1024w\" sizes=\"auto, (max-width: 1270px) 100vw, 1270px\" \/><\/noscript><\/a><\/p>\n<p>One such toolkit is the open source <a href=\"https:\/\/ionicframework.com\/getting-started#cli\" target=\"_blank\" rel=\"noopener\">Ionic Framework<\/a>. With over 100 UI components, plus navigation, platform-specific styling, and lots of other goodies that we&#8217;ll talk about here, it allows you to focus on your app&#8217;s core features instead of wrestling with a variety of concerns encountered when building for mobile devices.<\/p>\n<p>Now, let&#8217;s jump into some of the major advantages of using Ionic if you&#8217;re a PhoneGap developer.<\/p>\n<h2>Platform Continuity<\/h2>\n<p>The first thing that web developers want to accomplish when building mobile apps is ensuring that the UI looks and feels like the platform on which the app is running. Additionally, developers want to implement Apple and Google-approved platform design styling with minimal effort, while users want a familiar, high-performing app experience. In fact, this is a typical criticism directed at hybrid mobile apps: If you simply throw your existing website into a native app shell, it&#8217;s noticeable.<\/p>\n<p>An Ionic app viewed on an iOS device will automatically style itself with the <a href=\"https:\/\/www.apple.com\/ios\" target=\"_blank\" rel=\"noopener\">iOS theme<\/a>, while an Ionic app viewed from an Android device renders with the <a href=\"https:\/\/material.io\/guidelines\/\" target=\"_blank\" rel=\"noopener\">Material Design theme<\/a>. When viewed as a Progressive Web App (PWA) from a browser, Ionic will default to using the Material Design theme. Also, deciding which platform to use in certain scenarios is entirely configurable and Ionic UI components automatically include platform-specific animations as well.<\/p>\n<p><a href=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1700\" height=\"1500\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison.png\" alt=\"Android vs iOS Ionic styling\" class=\"aligncenter size-full wp-image-2714 lazyload\" data-srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison.png 1700w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison-300x265.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison-768x678.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison-1024x904.png 1024w\" data-sizes=\"auto, (max-width: 1700px) 100vw, 1700px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 1700px; --smush-placeholder-aspect-ratio: 1700\/1500;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"1700\" height=\"1500\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison.png\" alt=\"Android vs iOS Ionic styling\" class=\"aligncenter size-full wp-image-2714\" srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison.png 1700w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison-300x265.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison-768x678.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/ion-lab-comparison-1024x904.png 1024w\" sizes=\"auto, (max-width: 1700px) 100vw, 1700px\" \/><\/noscript><\/a><\/p>\n<p>You could reproduce this on your own, but note the subtle design differences in the image above, starting with the &#8220;Home&#8221; header: The alignment is centered in iOS and is right-aligned on Android. Additionally, the icons in the tab footer have slightly different designs. When appearing across an entire app experience, these differences add up!<\/p>\n<h2>Responsive Design<\/h2>\n<p>The most compelling reason to build a web-based, cross-platform app is the ability to write one codebase and use it everywhere. This is easier said than done: You need to ensure that the app is responsive across many form factors. On mobile, with thousands of devices available today, this has never been more challenging.<\/p>\n<p>Fortunately, Ionic&#8217;s UI components have built-in responsive design. Consider the Ionic <a href=\"https:\/\/ionicframework.com\/docs\/api\/split-pane\" target=\"_blank\" rel=\"noopener\">SplitPane component<\/a>, for example: When viewed on a larger, desktop-sized screen, it automatically expands to fill one-third of the available space. Within a smaller viewport, it displays a standard mobile hamburger menu.<\/p>\n<p><a href=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-conf-menu.gif\"><img loading=\"lazy\" decoding=\"async\" width=\"1680\" height=\"1050\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-conf-menu.gif\" alt=\"Ionic SplitPane component\" class=\"aligncenter size-full wp-image-2715 lazyload\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 1680px; --smush-placeholder-aspect-ratio: 1680\/1050;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"1680\" height=\"1050\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-conf-menu.gif\" alt=\"Ionic SplitPane component\" class=\"aligncenter size-full wp-image-2715\" \/><\/noscript><\/a><\/p>\n<p>To test this out yourself, check out the <a href=\"https:\/\/github.com\/ionic-team?utf8=%E2%9C%93&#038;q=conference-app&#038;type=&#038;language=\" target=\"_blank\" rel=\"noopener\">Ionic 4 Conference app on GitHub<\/a>, implemented in a variety of web frameworks including Angular, React, and Vue.<\/p>\n<h2>Constantly Changing Mobile Landscape<\/h2>\n<p>There&#8217;s no denying it\u2014the mobile ecosystem evolves quickly. There are always new iOS and Android operating system releases to test your app on and thousands of mobile phones and tablets to support. On top of all that, there are occasional new hardware device form factors that are introduced, such as the iPhone notch.<\/p>\n<p>Before joining Ionic, <a href=\"https:\/\/blog.phonegap.com\/displaying-a-phonegap-app-correctly-on-the-iphone-x-c4a85664c493\" target=\"_blank\" rel=\"noopener\">I wrote a guide<\/a> specifically on the topic of handling device form factors after struggling to get my PhoneGap app to display correctly on the iPhone X. In order to get it to display properly, several steps were required:<\/p>\n<ul>\n<li>Updating the viewport meta tag to ensure the entire iPhone screen is utilized<\/li>\n<li>Switching to Storyboard splash screens to remove black bars at the top and bottom of the screen<\/li>\n<li>Defining &#8220;safe area&#8221; perimeters so that the physical notch doesn&#8217;t hide the status bar <\/li>\n<li>Applying a &#8220;safe area&#8221; for the footer<\/li>\n<\/ul>\n<p>I struggled with this for hours, tediously researching and incrementally testing each change. Through a combination of Stack Overflow questions, an article from a well-known PhoneGap community member, and the official Webkit blog, I finally managed to cobble together a solution.<\/p>\n<p>Was the effort worth it? In a certain sense, yes, because I needed to support an important new Apple design found in their flagship devices. However, the time I spent on these updates was time not spent building new features, answering user support emails, and so forth.<\/p>\n<p>Fortunately, there&#8217;s a better way\u2014A UI framework that has a proven track record of keeping up with the chaotic mobile ecosystem, so you can focus on building your app. Ionic automatically handles the iPhone notch details for you and keeps a constant lookout for any new designs handed down from Apple and Google.<\/p>\n<p><a href=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch.png\"><img loading=\"lazy\" decoding=\"async\" width=\"2000\" height=\"2000\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch.png\" alt=\"iOS Notch example\" class=\"aligncenter size-full wp-image-2716 lazyload\" data-srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch.png 2000w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-150x150.png 150w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-300x300.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-768x768.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-1024x1024.png 1024w\" data-sizes=\"auto, (max-width: 2000px) 100vw, 2000px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 2000px; --smush-placeholder-aspect-ratio: 2000\/2000;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"2000\" height=\"2000\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch.png\" alt=\"iOS Notch example\" class=\"aligncenter size-full wp-image-2716\" srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch.png 2000w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-150x150.png 150w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-300x300.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-768x768.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/phonegap-notch-1024x1024.png 1024w\" sizes=\"auto, (max-width: 2000px) 100vw, 2000px\" \/><\/noscript><\/a><\/p>\n<h2>What about learning Angular?<\/h2>\n<p>Until now, you may have held off adding a UI component library like the Ionic Framework for many reasons, including concerns around timing and effort involved. For me personally, I really wanted to move my PhoneGap apps to Ionic but was scared off at the time by needing to know Angular first.<\/p>\n<p>However, with the <a href=\"https:\/\/ionicframework.com\/blog\/introducing-ionic-4-ionic-for-everyone\/\" target=\"_blank\" rel=\"noopener\">recent release of Ionic 4<\/a>, all major web frameworks are supported (including React and Vue), meaning Angular knowledge is no longer required to leverage Ionic. Additionally, Ionic 4 components even work <a href=\"https:\/\/ionicframework.com\/docs\/installation\/cdn#ionic-framework-cdn\" target=\"_blank\" rel=\"noopener\">without a web framework<\/a>, which is perfect for PhoneGap developers looking to slowly incorporate Ionic into their mobile app.<\/p>\n<h2>Getting Started<\/h2>\n<p>Even if you started building PhoneGap apps around the same time I did (2013 or so), it&#8217;s easy to give the apps a fresh coat of paint by adding Ionic. All that&#8217;s required is a <code>&lt;script&gt;<\/code> tag to include the Ionic UI component library and a <code>&lt;link&gt;<\/code> tag to include Ionic CSS. <a href=\"https:\/\/ionicframework.com\/docs\/installation\/cdn#ionic-framework-cdn\" target=\"_blank\" rel=\"noopener\">See here<\/a> for more details.<\/p>\n<p>If you&#8217;d like to create a new Ionic app from scratch, install Ionic and <a href=\"https:\/\/ionicframework.com\/getting-started#cli\" target=\"_blank\" rel=\"noopener\">start building<\/a>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>PhoneGap (and later Adobe PhoneGap &amp; Apache Cordova) emerged back in 2009 as a major evolution in app development. It allowed web developers like myself to reapply their web skills to create native mobile experiences for Android, iOS, and other platforms. In fact, I&#8217;ve been a long-time PhoneGap developer that loves the platform&#8217;s power and [&hellip;]<\/p>\n","protected":false},"author":62,"featured_media":2717,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"publish_to_discourse":"","publish_post_category":"","wpdc_auto_publish_overridden":"","wpdc_topic_tags":"","wpdc_pin_topic":"","wpdc_pin_until":"","discourse_post_id":"","discourse_permalink":"","wpdc_publishing_response":"","wpdc_publishing_error":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[123],"tags":[28,145,78],"class_list":["post-2681","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-perspectives","tag-cordova","tag-phonegap","tag-ux"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.0 (Yoast SEO v23.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PhoneGap Devs: It&#039;s Time to Embrace a UI Framework - Ionic Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PhoneGap Devs: It&#039;s Time to Embrace a UI Framework\" \/>\n<meta property=\"og:description\" content=\"PhoneGap (and later Adobe PhoneGap &amp; Apache Cordova) emerged back in 2009 as a major evolution in app development. It allowed web developers like myself to reapply their web skills to create native mobile experiences for Android, iOS, and other platforms. In fact, I&#8217;ve been a long-time PhoneGap developer that loves the platform&#8217;s power and [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2019-04-08T14:25:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-10-15T22:33:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Matt Netkow\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dotNetkow\" \/>\n<meta name=\"twitter:site\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matt Netkow\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\"},\"author\":{\"name\":\"Matt Netkow\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/93c8b2fe110f183510c6285b0de40790\"},\"headline\":\"PhoneGap Devs: It&#8217;s Time to Embrace a UI Framework\",\"datePublished\":\"2019-04-08T14:25:59+00:00\",\"dateModified\":\"2020-10-15T22:33:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\"},\"wordCount\":1125,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png\",\"keywords\":[\"Cordova\",\"PhoneGap\",\"UX\"],\"articleSection\":[\"Perspectives\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\",\"url\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\",\"name\":\"PhoneGap Devs: It's Time to Embrace a UI Framework - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png\",\"datePublished\":\"2019-04-08T14:25:59+00:00\",\"dateModified\":\"2020-10-15T22:33:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png\",\"width\":1440,\"height\":800},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PhoneGap Devs: It&#8217;s Time to Embrace a UI Framework\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ionic.io\/blog\/#website\",\"url\":\"https:\/\/ionic.io\/blog\/\",\"name\":\"ionic.io\/blog\",\"description\":\"Build amazing native and progressive web apps with the web\",\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ionic.io\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/ionic.io\/blog\/#organization\",\"name\":\"Ionic\",\"url\":\"https:\/\/ionic.io\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png\",\"width\":1920,\"height\":854,\"caption\":\"Ionic\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/ionicframework\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/93c8b2fe110f183510c6285b0de40790\",\"name\":\"Matt Netkow\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/07\/mattnetkow-150x150.jpg\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/07\/mattnetkow-150x150.jpg\",\"caption\":\"Matt Netkow\"},\"sameAs\":[\"https:\/\/x.com\/dotNetkow\"],\"url\":\"https:\/\/ionic.io\/blog\/author\/mattnetkow\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"PhoneGap Devs: It's Time to Embrace a UI Framework - Ionic Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework","og_locale":"en_US","og_type":"article","og_title":"PhoneGap Devs: It's Time to Embrace a UI Framework","og_description":"PhoneGap (and later Adobe PhoneGap &amp; Apache Cordova) emerged back in 2009 as a major evolution in app development. It allowed web developers like myself to reapply their web skills to create native mobile experiences for Android, iOS, and other platforms. In fact, I&#8217;ve been a long-time PhoneGap developer that loves the platform&#8217;s power and [&hellip;]","og_url":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework","og_site_name":"Ionic Blog","article_published_time":"2019-04-08T14:25:59+00:00","article_modified_time":"2020-10-15T22:33:13+00:00","og_image":[{"width":1440,"height":800,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png","type":"image\/png"}],"author":"Matt Netkow","twitter_card":"summary_large_image","twitter_creator":"@dotNetkow","twitter_site":"@ionicframework","twitter_misc":{"Written by":"Matt Netkow","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework"},"author":{"name":"Matt Netkow","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/93c8b2fe110f183510c6285b0de40790"},"headline":"PhoneGap Devs: It&#8217;s Time to Embrace a UI Framework","datePublished":"2019-04-08T14:25:59+00:00","dateModified":"2020-10-15T22:33:13+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework"},"wordCount":1125,"commentCount":0,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png","keywords":["Cordova","PhoneGap","UX"],"articleSection":["Perspectives"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework","url":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework","name":"PhoneGap Devs: It's Time to Embrace a UI Framework - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png","datePublished":"2019-04-08T14:25:59+00:00","dateModified":"2020-10-15T22:33:13+00:00","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png","width":1440,"height":800},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/phonegap-devs-its-time-to-embrace-a-ui-framework#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"PhoneGap Devs: It&#8217;s Time to Embrace a UI Framework"}]},{"@type":"WebSite","@id":"https:\/\/ionic.io\/blog\/#website","url":"https:\/\/ionic.io\/blog\/","name":"ionic.io\/blog","description":"Build amazing native and progressive web apps with the web","publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ionic.io\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ionic.io\/blog\/#organization","name":"Ionic","url":"https:\/\/ionic.io\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png","width":1920,"height":854,"caption":"Ionic"},"image":{"@id":"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/ionicframework"]},{"@type":"Person","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/93c8b2fe110f183510c6285b0de40790","name":"Matt Netkow","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/07\/mattnetkow-150x150.jpg","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/07\/mattnetkow-150x150.jpg","caption":"Matt Netkow"},"sameAs":["https:\/\/x.com\/dotNetkow"],"url":"https:\/\/ionic.io\/blog\/author\/mattnetkow"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/04\/Phonegap-ui-framework.png","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/2681","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/users\/62"}],"replies":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/comments?post=2681"}],"version-history":[{"count":0,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/2681\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/2717"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=2681"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=2681"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=2681"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}