{"id":113,"date":"2014-04-10T15:00:00","date_gmt":"2014-04-10T15:00:00","guid":{"rendered":"http:\/\/localhost\/?p=113"},"modified":"2017-01-10T17:20:07","modified_gmt":"2017-01-10T17:20:07","slug":"angular-mobile-dev","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/angular-mobile-dev","title":{"rendered":"Building Mobile Apps with AngularJS and Ionic"},"content":{"rendered":"<p><a href=\"http:\/\/angularjs.org\/\">AngularJS<\/a> is turning out to be one of the best frameworks for building mobile apps across all major platforms.<\/p>\n<p>One reason that Angular fits so well into the mobile developer toolbox is its features for interacting with backend web services and external data sources. Since most apps today are data-driven, it makes sense to use a tool built from the ground up to solve this problem.<\/p>\n<p>Beyond that, AngularJS comes with some of the most modern and advanced software development practices ready-made and easy to use. You&#8217;ll find that building mobile apps with Angular is highly efficient and results in solid code that will scale up as you pile on the features.<\/p>\n<p><!--more--><\/p>\n<h3 id=\"threewaydatabinding\">Three-way data binding<\/h3>\n<p>Data binding is a popular concept in developer circles. The idea is when our data model updates, the UI also updates. This is great, but Angular takes it a step further: when our UI updates, we update the model to match.<\/p>\n<p>This is called two-way data binding and it&#8217;s incredibly easy to do in Angular:<\/p>\n<p><a href=\"http:\/\/firebase.com\/\">Firebase<\/a> coined the term <a href=\"https:\/\/www.firebase.com\/blog\/2013-10-04-firebase-angular-data-binding.html\">&#8220;Three-way Data Binding&#8221;<\/a> which is the idea that we can not only keep our UI and in-memory data in sync (two-way data binding), but we can also sync the data with our backend services.<\/p>\n<p>This means taking input from a user, processing it, saving it on the server, and keeping the UI in sync is incredibly easy to do with Angular. Coming from a jQuery or native iOS\/Android background, you&#8217;ll find Angular&#8217;s data binding to be a <em>huge<\/em> timesaver for mobile development.<\/p>\n<h3 id=\"reusablelogic\">Reusable logic<\/h3>\n<p>Angular helps keep our view (UI), data model, and application logic separate.  This means Angular lets us reuse our web application logic on multiple devices on multiple platforms, while still enabling us to customize the UI for each platform.<\/p>\n<p>Previously, to target users across desktop, tablet, and mobile, our only option was to build a separate website for the Desktop, then build an iOS app with Objective-C, then an Android app with Java. We weren&#8217;t able to share any code, making application development expensive, time consuming, and <em>risky<\/em>.<\/p>\n<p>With AngularJS, we can keep the funcionality for our application (in controllers) separate from the way our application looks. This works regardless of whether we take a Responsive Web Design approach, or custom UIs for desktop and mobile.<\/p>\n<h3 id=\"testability\">Testability<\/h3>\n<p>AngularJS uses the concept of <a href=\"http:\/\/docs.angularjs.org\/guide\/di\">Dependency Injection<\/a> (DI) to make it easy to pull in pieces of your code from anywhere. One benefit of this is how easy it is to <em>mock<\/em> part of your code for testing, which is the process of substituting a real component for one that fakes the functionality for testing purposes.<\/p>\n<p>On mobile, this is especially important due to the slower develop-deploy-test cycle. We can&#8217;t afford to waste time setting up and debugging a full physical enviornment each time we want to make a change in our app.<\/p>\n<p>Imagine building an app that interacts with a Bluetooth device. If you use Angular and provide the Bluetooth functionality in a self-contained <em>service<\/em>, you can quickly mock this service and add fake Bluetooth data instead of having to painstakingly connect and reconnect with a physical Bluetooth device. Your mobile app won&#8217;t even know the difference!<\/p>\n<h3 id=\"amongfriends\">Among Friends<\/h3>\n<p>AngularJS is being adopted by developers at an incredible rate (check out our <a href=\"http:\/\/ionicframework.com\/blog\/angularjs-will-be-huge\/\">last post<\/a> on that). Google Trends for the last several years clearly shows the explosive growth of AngularJS:<\/p>\n<p><script type=\"text\/javascript\" src=\"\/\/www.google.com\/trends\/embed.js?hl=en-US&amp;q=angularjs,+ember.js,+knockoutjs,+backbonejs&amp;cmpt=q&amp;content=1&amp;cid=TIMESERIES_GRAPH_0&amp;export=5&amp;w=550&amp;h=330\"><\/script><\/p>\n<p>This means by picking Angular we can take advantage of a growing number of high quality libraries and addons being created by the community. Need charts and graphs, analytics, or i18n support? It&#8217;s all there. See the growing <a href=\"http:\/\/ngmodules.org\/\">ngmodules.org<\/a> database for a good selection of these components.<\/p>\n<h3 id=\"mobileuiwithionic\">Mobile UI with Ionic<\/h3>\n<p>One thing that is often missing when building a mobile app with web technologies is the lack of a native-style UI kit. Luckily, with <a href=\"https:\/\/ionicframework.com\/\">Ionic<\/a>, you get that in one free and open source package, complete with amazing AngularJS features. Check out our <a href=\"https:\/\/ionicframework.com\/docs\/\">huge collection<\/a> of mobile-focused <a href=\"https:\/\/ionicframework.com\/docs\/api\/directive\/ionSideMenus\/\">components<\/a> and <a href=\"https:\/\/ionicframework.com\/docs\/api\/service\/$ionicPopup\/\">utilities<\/a> for building great apps with AngularJS and web technologies you already know and love.<\/p>\n<p>Ionic is focused on using Web Standards, which means an Ionic app will fit right into your frontend stack, from desktop to tablet to mobile, and will take advantage of any existing web development experience on your team.<\/p>\n<p>Ionic is part of a quickly growing community of AngularJS powered libraries that make building mobile apps with Angular incredibly fast and easy. <\/p>\n<h3 id=\"goforthandbuild\">Go forth and build<\/h3>\n<p>AngularJS is a great choice not only for desktop apps, but increasingly for mobile apps as well. The combination of tight data binding across all parts of the application make developing data-driven apps with Angular fast and easy.<\/p>\n<p>Being able to share application logic across desktop, tablet, and mobile apps is a huge plus which will save an incredible amount of time and money, and make it easier to add features for all your apps.<\/p>\n<p>Angular&#8217;s focus on testability makes it easy to mock physical devices and situations (bluetooth, GPS, and accelerometer, to name a few), which can dramatically speed up the development process and make your code more battle hardened and testable.<\/p>\n<p>It&#8217;s also a pleasure to develop in, and developers are increasingly learning and choosing to develop with Angular. It&#8217;s a safe bet for finding great developers to build your apps.<\/p>\n<p>What are your thoughts? Have you found AngularJS great for mobile app development? <strong>Share your thoughts below<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>AngularJS is turning out to be one of the best frameworks for building mobile apps across all major platforms. One reason that Angular fits so well into the mobile developer toolbox is its features for interacting with backend web services and external data sources. Since most apps today are data-driven, it makes sense to use [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":1634,"comment_status":"open","ping_status":"open","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":[1],"tags":[2,3,5],"class_list":["post-113","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all","tag-angularjs","tag-ionic","tag-open-source"],"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>Building Mobile Apps with AngularJS and Ionic - 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\/angular-mobile-dev\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Building Mobile Apps with AngularJS and Ionic\" \/>\n<meta property=\"og:description\" content=\"AngularJS is turning out to be one of the best frameworks for building mobile apps across all major platforms. One reason that Angular fits so well into the mobile developer toolbox is its features for interacting with backend web services and external data sources. Since most apps today are data-driven, it makes sense to use [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/angular-mobile-dev\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-04-10T15:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-01-10T17:20:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Max Lynch\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@maxlynch\" \/>\n<meta name=\"twitter:site\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Max Lynch\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev\"},\"author\":{\"name\":\"Max Lynch\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/91f360cffbd804a464b0c4a87b5c5f1e\"},\"headline\":\"Building Mobile Apps with AngularJS and Ionic\",\"datePublished\":\"2014-04-10T15:00:00+00:00\",\"dateModified\":\"2017-01-10T17:20:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev\"},\"wordCount\":927,\"commentCount\":4,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg\",\"keywords\":[\"angularjs\",\"Ionic\",\"Open Source\"],\"articleSection\":[\"All\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/angular-mobile-dev#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev\",\"url\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev\",\"name\":\"Building Mobile Apps with AngularJS and Ionic - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg\",\"datePublished\":\"2014-04-10T15:00:00+00:00\",\"dateModified\":\"2017-01-10T17:20:07+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/angular-mobile-dev\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg\",\"width\":1200,\"height\":600},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/angular-mobile-dev#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Building Mobile Apps with AngularJS and Ionic\"}]},{\"@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\/91f360cffbd804a464b0c4a87b5c5f1e\",\"name\":\"Max Lynch\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/max-avatar-150x150.jpg\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/max-avatar-150x150.jpg\",\"caption\":\"Max Lynch\"},\"description\":\"CEO\",\"sameAs\":[\"http:\/\/twitter.com\/maxlynch\",\"https:\/\/x.com\/maxlynch\"],\"url\":\"https:\/\/ionic.io\/blog\/author\/max\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Building Mobile Apps with AngularJS and Ionic - 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\/angular-mobile-dev","og_locale":"en_US","og_type":"article","og_title":"Building Mobile Apps with AngularJS and Ionic","og_description":"AngularJS is turning out to be one of the best frameworks for building mobile apps across all major platforms. One reason that Angular fits so well into the mobile developer toolbox is its features for interacting with backend web services and external data sources. Since most apps today are data-driven, it makes sense to use [&hellip;]","og_url":"https:\/\/ionic.io\/blog\/angular-mobile-dev","og_site_name":"Ionic Blog","article_published_time":"2014-04-10T15:00:00+00:00","article_modified_time":"2017-01-10T17:20:07+00:00","og_image":[{"width":1200,"height":600,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg","type":"image\/jpeg"}],"author":"Max Lynch","twitter_card":"summary_large_image","twitter_creator":"@maxlynch","twitter_site":"@ionicframework","twitter_misc":{"Written by":"Max Lynch","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev"},"author":{"name":"Max Lynch","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/91f360cffbd804a464b0c4a87b5c5f1e"},"headline":"Building Mobile Apps with AngularJS and Ionic","datePublished":"2014-04-10T15:00:00+00:00","dateModified":"2017-01-10T17:20:07+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev"},"wordCount":927,"commentCount":4,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg","keywords":["angularjs","Ionic","Open Source"],"articleSection":["All"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/angular-mobile-dev#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev","url":"https:\/\/ionic.io\/blog\/angular-mobile-dev","name":"Building Mobile Apps with AngularJS and Ionic - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg","datePublished":"2014-04-10T15:00:00+00:00","dateModified":"2017-01-10T17:20:07+00:00","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/angular-mobile-dev"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg","width":1200,"height":600},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/angular-mobile-dev#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"Building Mobile Apps with AngularJS and Ionic"}]},{"@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\/91f360cffbd804a464b0c4a87b5c5f1e","name":"Max Lynch","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/max-avatar-150x150.jpg","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/max-avatar-150x150.jpg","caption":"Max Lynch"},"description":"CEO","sameAs":["http:\/\/twitter.com\/maxlynch","https:\/\/x.com\/maxlynch"],"url":"https:\/\/ionic.io\/blog\/author\/max"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2014\/04\/angularjs-ionic-framework.jpg","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/113","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\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/comments?post=113"}],"version-history":[{"count":0,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/113\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/1634"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=113"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=113"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}