{"id":2886,"date":"2019-06-13T16:36:41","date_gmt":"2019-06-13T16:36:41","guid":{"rendered":"https:\/\/ionicframework.com\/blog\/?p=2886"},"modified":"2019-06-14T16:30:57","modified_gmt":"2019-06-14T16:30:57","slug":"quick-guide-comparing-ionic-and-flutter","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter","title":{"rendered":"Quick Guide to Comparing Ionic &#038; Flutter"},"content":{"rendered":"<p>Flutter has been out of preview for about six months now, and in that time we\u2019ve gotten quite a few questions about how it compares with Ionic. Having taken a close look at what Google\u2019s latest development framework has to offer, we put together a thorough <a href=\"https:\/\/ionicframework.com\/enterprise\/resources\/articles\/ionic-vs-flutter-comparison-guide\">comparison guide<\/a> that walks through the key similarities and differences between Ionic and Flutter. Of course, we\u2019re slightly biased in our outlook, but we\u2019ve tried to keep this comparison as fact-based and balanced as possible.<\/p>\n<p>I encourage anyone who\u2019s interested in this topic to check out our guide for the full details, but here\u2019s the very short version.<\/p>\n<p><a href=\"https:\/\/ionicframework.com\/enterprise\/resources\/articles\/ionic-vs-flutter-comparison-guide\"> >>>> Download Ionic vs Flutter Guide here &lt;&lt;&lt;&lt; <\/a><\/p>\n<p><!--more--><\/p>\n<h3>Initial impressions<\/h3>\n<p>First, like many, we\u2019ve been impressed with what we\u2019ve seen so far, particularly on mobile. They\u2019ve taken a very unique approach and you can see that it\u2019s paid off in terms of mobile performance and snazzy widget and animations. Not only that, we\u2019re big fans of the team\u2019s stated mission to create a \u201cportable UI framework that works everywhere.\u201d<\/p>\n<h3>Shared vision<\/h3>\n<p>In fact, Ionic and Flutter share the same vision: making it easy to create beautiful, high-performance apps that work across mobile, desktop, and the web. That\u2019s unique among most other cross-platform development frameworks like React Native or Xamarin, which are almost exclusively focused on mobile.<\/p>\n<p>Having a single codebase and UI library that looks and feels great on every platform is not only great for developers. It also provides a much better experience for users, without usual jarring UX changes that come from having separate apps for each platform, built with entirely different UI components, tech stacks, and development teams.<\/p>\n<h3>Opposing philosophies<\/h3>\n<p>Although we share the same vision, Ionic and Flutter have taken very different paths to bring that vision into reality.<\/p>\n<p>Ionic Framework and tooling are all based on open web technologies, from the web languages that you use to build Ionic apps (HTML, CSS, JavaScript), to the standards-based UI components running inside your app. In that sense, when you choose Ionic, you\u2019re really choosing the web \u2014 the most time-tested, universal runtime in the world. You build with the web, and we give you the tools and component libraries to help you succeed.<\/p>\n<p>Flutter, in contrast, has created a self-contained ecosystem that is at odds with the common languages, toolsets, and standards found in the broader development world. From Dart, the non-standard language that you use to build Flutter apps, to its custom rendering engine, nearly everything about Flutter is based on its own set of standards that don\u2019t take advantage of today\u2019s browser capabilities, web languages, and JavaScript libraries.<\/p>\n<p>Of course, their design choices are clearly driven by a desire to deliver great mobile performance, and they\u2019ve proven that with the demos the team has released. However, it should be noted that the fundamental limitations of their architecture will likely hamper the performance of Flutter on the web, as we explain in the full article.<\/p>\n<p>The big question is, are you ready to go all-in on the Flutter ecosystem? We believe you can get the same great mobile performance, and far superior web performance, without having to give up on the standards-based languages, libraries, and tools that exist today.<\/p>\n<h3>You decide<\/h3>\n<p>You\u2019ll have to make that choice yourself. We recommend you take a close look at both solutions and decide based on which philosophy you align with, where and how you plan to deploy your app, and what skills you know today or would like to learn in the future.<\/p>\n<p>Check out the full <a href=\"https:\/\/ionicframework.com\/enterprise\/resources\/articles\/ionic-vs-flutter-comparison-guide\">Ionic vs Flutter Comparison Guide<\/a> for more details and a much more expanded analysis of the two solutions. Happy reading!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Flutter has been out of preview for about six months now, and in that time we\u2019ve gotten quite a few questions about how it compares with Ionic. Having taken a close look at what Google\u2019s latest development framework has to offer, we put together a thorough comparison guide that walks through the key similarities and [&hellip;]<\/p>\n","protected":false},"author":62,"featured_media":2885,"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":[133,154],"class_list":["post-2886","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-perspectives","tag-cross-platform","tag-flutter"],"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>Quick Guide to Comparing Ionic &amp; Flutter - 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\/quick-guide-comparing-ionic-and-flutter\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quick Guide to Comparing Ionic &amp; Flutter\" \/>\n<meta property=\"og:description\" content=\"Flutter has been out of preview for about six months now, and in that time we\u2019ve gotten quite a few questions about how it compares with Ionic. Having taken a close look at what Google\u2019s latest development framework has to offer, we put together a thorough comparison guide that walks through the key similarities and [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2019-06-13T16:36:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-06-14T16:30:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter\"},\"author\":{\"name\":\"Matt Netkow\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/93c8b2fe110f183510c6285b0de40790\"},\"headline\":\"Quick Guide to Comparing Ionic &#038; Flutter\",\"datePublished\":\"2019-06-13T16:36:41+00:00\",\"dateModified\":\"2019-06-14T16:30:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter\"},\"wordCount\":637,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png\",\"keywords\":[\"Cross-Platform\",\"Flutter\"],\"articleSection\":[\"Perspectives\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter\",\"url\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter\",\"name\":\"Quick Guide to Comparing Ionic & Flutter - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png\",\"datePublished\":\"2019-06-13T16:36:41+00:00\",\"dateModified\":\"2019-06-14T16:30:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png\",\"width\":1440,\"height\":800},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quick Guide to Comparing Ionic &#038; Flutter\"}]},{\"@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":"Quick Guide to Comparing Ionic & Flutter - 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\/quick-guide-comparing-ionic-and-flutter","og_locale":"en_US","og_type":"article","og_title":"Quick Guide to Comparing Ionic & Flutter","og_description":"Flutter has been out of preview for about six months now, and in that time we\u2019ve gotten quite a few questions about how it compares with Ionic. Having taken a close look at what Google\u2019s latest development framework has to offer, we put together a thorough comparison guide that walks through the key similarities and [&hellip;]","og_url":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter","og_site_name":"Ionic Blog","article_published_time":"2019-06-13T16:36:41+00:00","article_modified_time":"2019-06-14T16:30:57+00:00","og_image":[{"width":1440,"height":800,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.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":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter"},"author":{"name":"Matt Netkow","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/93c8b2fe110f183510c6285b0de40790"},"headline":"Quick Guide to Comparing Ionic &#038; Flutter","datePublished":"2019-06-13T16:36:41+00:00","dateModified":"2019-06-14T16:30:57+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter"},"wordCount":637,"commentCount":0,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png","keywords":["Cross-Platform","Flutter"],"articleSection":["Perspectives"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter","url":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter","name":"Quick Guide to Comparing Ionic & Flutter - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png","datePublished":"2019-06-13T16:36:41+00:00","dateModified":"2019-06-14T16:30:57+00:00","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2019\/06\/ionic_vs_flutter.png","width":1440,"height":800},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/quick-guide-comparing-ionic-and-flutter#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"Quick Guide to Comparing Ionic &#038; Flutter"}]},{"@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\/06\/ionic_vs_flutter.png","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/2886","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=2886"}],"version-history":[{"count":0,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/2886\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/2885"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=2886"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=2886"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=2886"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}