{"id":6308,"date":"2025-03-14T17:19:26","date_gmt":"2025-03-14T21:19:26","guid":{"rendered":"https:\/\/ionic.io\/blog\/?p=6308"},"modified":"2025-03-19T10:36:25","modified_gmt":"2025-03-19T14:36:25","slug":"announcing-ionic-8-5","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5","title":{"rendered":"Announcing Ionic 8.5"},"content":{"rendered":"\n<p>We are excited to announce the release of Ionic 8.5, bringing valuable updates to form controls, modals, and framework customization. This release enhances components like Checkbox, Select, and Toggle with new validation features, improves Sheet Modals with better scrolling behavior, and adds more control over styling and error logging. With React 19 support and key community contributions, Ionic 8.5 makes development more seamless and efficient.<\/p>\n\n\n\n<p>Dive into what&#8217;s new below \ud83d\udc47<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-enhanced-form-controls\">Enhanced Form Controls<\/h2>\n\n\n\n<p>In our ongoing effort to make form handling more intuitive, we&#8217;ve introduced several updates:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-helper-and-error-text\">Helper and error text<\/h3>\n\n\n\n<p>The <code>helperText<\/code> and <code>errorText<\/code> properties that have been available in <code>ion-input<\/code> and <code>ion-textarea<\/code> are now available on <code>ion-checkbox<\/code>, <code>ion-select<\/code>, <code>ion-toggle<\/code>, and <code>ion-radio-group<\/code>. These properties allow developers to provide additional context or error messages directly within the form controls, enhancing user guidance and validation processes.<\/p>\n\n\n\n<p><em>\u27a1\ufe0f Thanks to <a href=\"https:\/\/github.com\/swimer11\">swimer11<\/a> for their help implementing this feature for select!<\/em><\/p>\n\n\n\n<figure class=\"wp-block-video device-demo\"><video height=\"1698\" style=\"aspect-ratio: 776 \/ 1698;\" width=\"776\" autoplay controls loop muted src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/helper-error-demo.mp4\"><\/video><\/figure>\n\n\n\n<p>See the <a href=\"https:\/\/ionicframework.com\/docs\/api\/checkbox#helper--error-text\">Checkbox<\/a>, <a href=\"https:\/\/ionicframework.com\/docs\/api\/select#helper--error-text\">Select<\/a>, <a href=\"https:\/\/ionicframework.com\/docs\/api\/toggle#helper--error-text\">Toggle<\/a>, and <a href=\"https:\/\/ionicframework.com\/docs\/api\/radio#helper--error-text\">Radio<\/a> documentation for more information.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-required-property\">Required property<\/h3>\n\n\n\n<p>We&#8217;ve added the <code>required<\/code> property to <code>ion-checkbox<\/code>, <code>ion-select<\/code>, and <code>ion-toggle<\/code>. This allows these controls to be marked as mandatory for accessibility purposes. When set to <code>true<\/code>, screen readers will announce the field as required. However, please note that this property does not prevent form submission if the value is invalid; it is intended solely to improve accessibility for users relying on assistive technologies.<\/p>\n\n\n\n<p>See the <a href=\"https:\/\/ionicframework.com\/docs\/api\/checkbox#required\">Checkbox<\/a>, <a href=\"https:\/\/ionicframework.com\/docs\/api\/select#required\">Select<\/a>, and <a href=\"https:\/\/ionicframework.com\/docs\/api\/toggle#required\">Toggle<\/a> documentation for more information.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-flexible-sheet-modal-scrolling\">Flexible Sheet Modal Scrolling<\/h2>\n\n\n\n<p>Introducing the <code>expandToScroll<\/code> property, which enables sheet modals to be scrollable at all breakpoints when set to <code>false<\/code>. By default, scrolling is only enabled when the sheet modal is fully expanded. This enhancement provides a more seamless user experience, especially when dealing with content-rich modals that require scrolling.<\/p>\n\n\n\n<p><em>\u27a1\ufe0f Thanks to <a href=\"https:\/\/github.com\/kumibrr\">kumibrr<\/a> for their valuable contributions to the implementation of this feature!<\/em><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><code>expandToScroll<\/code> = <code>false<\/code><\/td><td><code>expandToScroll<\/code> = <code>true<\/code><\/td><\/tr><tr><td><video autoplay=\"\" controls=\"\" loop=\"\" muted=\"\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/expand-to-scroll-false-fixed.mp4\"><\/video><\/td><td><video autoplay=\"\" controls=\"\" loop=\"\" muted=\"\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/expand-to-scroll-true.mp4\"><\/video><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>See the <a href=\"https:\/\/ionicframework.com\/docs\/api\/modal#scrolling-content-at-all-breakpoints\">Modal<\/a> documentation for more information.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-community-contributions\">Community Contributions<\/h2>\n\n\n\n<p>Our community is an integral part of enhancing the Ionic Framework, and we sincerely appreciate the contributions that help make it better. We&#8217;d like to thank the following contributors for their valuable work in adding these features:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/ionicframework.com\/docs\/api\/toolbar#css-shadow-parts\">Toolbar<\/a>: Thanks to <a href=\"https:\/\/github.com\/fudom\">fudom<\/a> for adding shadow parts for <code>background<\/code>, <code>container<\/code>, and <code>content<\/code>, providing developers with more customization options. (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/ac4ea3232b1ccffa1c31dc4c6c416e16848ff607\">ac4ea32<\/a>)<\/li>\n\n\n\n<li><a href=\"https:\/\/ionicframework.com\/docs\/developing\/config#ionicconfig\">Config<\/a>: Thanks to <a href=\"https:\/\/github.com\/sean-perkins\">sean-perkins<\/a> for introducing the <code>logLevel<\/code> option to suppress Ionic warnings and errors in the configuration, offering developers greater control over their debugging processes. (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/efd3e0fd2bafd7e77ca192b5a9f54c460cbd8f79\">efd3e0f<\/a>)<\/li>\n\n\n\n<li><a href=\"https:\/\/ionicframework.com\/docs\/api\/input\">Input<\/a> &amp; <a href=\"https:\/\/ionicframework.com\/docs\/api\/textarea\">Textarea<\/a>: Thanks to <a href=\"https:\/\/github.com\/mehran-prs\">mehran-prs<\/a> for adding support to inherit the <code>dir<\/code> attribute in the native form controls, enhancing our RTL (Right-to-Left) language support. (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/504fb6a25fddd4095b4ce69f3f0d38ccefae9dc7\">504fb6a<\/a>)<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-react-19-support\">React 19 Support<\/h2>\n\n\n\n<p>We&#8217;re excited to announce that Ionic 8.5 now fully supports React 19. This update ensures compatibility and leverages the latest features and improvements in the React ecosystem. Additionally, we&#8217;ve addressed issues related to React 19 types, ensuring a smoother development experience for our React community.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-notable-fixes\">Notable Fixes<\/h2>\n\n\n\n<p>This release also includes significant fixes from the last patch:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Capacitor v7 Support<\/strong>: Ensured full compatibility with Capacitor v7, allowing developers to use the latest native runtime features without issues. (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/b6b43ae2925f8a12b35cabd43abd9d838bc9714f\">b6b43ae<\/a>) (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/2149ba2c8d56a3a8ef4a6de89de1292f6efe3031\">2149ba2<\/a>)<\/li>\n\n\n\n<li><strong>Alert<\/strong>: Improved keyboard navigation by ensuring focus is set to the button when only one is present; otherwise, focus is placed on the wrapper for better accessibility. (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/4df0e0f4c00faec33f5ddc802945bf4ad9dc53d3\">4df0e0f<\/a>)<\/li>\n\n\n\n<li><strong>Select<\/strong>: Implemented auto-scroll to the selected item for all interfaces, enhancing user navigation within select menus. (<a href=\"https:\/\/github.com\/ionic-team\/ionic-framework\/commit\/8eaeb22e7a967100ffaadae8c8221e2e4888a3b6\">8eaeb22<\/a>)<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-s-next\">What&#8217;s Next<\/h2>\n\n\n\n<p>We know we&#8217;ve been quiet lately, but we want to reassure you that we are investing more in open source and are committed to growing the Ionic ecosystem. In the coming weeks we will share more details about our roadmap and the exciting improvements and new features on the horizon.<\/p>\n\n\n\n<p>We encourage you to explore these latest updates. As always your feedback is invaluable to us. Thank you for being an essential part of the Ionic community and for your continued support. Stay tuned for more updates soon! \ud83d\ude80<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are excited to announce the release of Ionic 8.5, bringing valuable updates to form controls, modals, and framework customization. This release enhances components like Checkbox, Select, and Toggle with new validation features, improves Sheet Modals with better scrolling behavior, and adds more control over styling and error logging. With React 19 support and key [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":6309,"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,120],"tags":[23,3],"class_list":["post-6308","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all","category-announcements","tag-framework","tag-ionic"],"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>Announcing Ionic 8.5 - 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\/announcing-ionic-8-5\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Announcing Ionic 8.5\" \/>\n<meta property=\"og:description\" content=\"We are excited to announce the release of Ionic 8.5, bringing valuable updates to form controls, modals, and framework customization. This release enhances components like Checkbox, Select, and Toggle with new validation features, improves Sheet Modals with better scrolling behavior, and adds more control over styling and error logging. With React 19 support and key [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-14T21:19:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-19T14:36:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2240\" \/>\n\t<meta property=\"og:image:height\" content=\"1120\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Brandy Smith\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:site\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Brandy Smith\" \/>\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\/announcing-ionic-8-5#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5\"},\"author\":{\"name\":\"Brandy Smith\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/fcd7940afdce3781b3381ec7c1b16c26\"},\"headline\":\"Announcing Ionic 8.5\",\"datePublished\":\"2025-03-14T21:19:26+00:00\",\"dateModified\":\"2025-03-19T14:36:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5\"},\"wordCount\":624,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png\",\"keywords\":[\"Framework\",\"Ionic\"],\"articleSection\":[\"All\",\"Announcements\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5\",\"url\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5\",\"name\":\"Announcing Ionic 8.5 - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png\",\"datePublished\":\"2025-03-14T21:19:26+00:00\",\"dateModified\":\"2025-03-19T14:36:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png\",\"width\":2240,\"height\":1120},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Announcing Ionic 8.5\"}]},{\"@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\/fcd7940afdce3781b3381ec7c1b16c26\",\"name\":\"Brandy Smith\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2024\/11\/headshot-zoomed-150x150.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2024\/11\/headshot-zoomed-150x150.png\",\"caption\":\"Brandy Smith\"},\"url\":\"https:\/\/ionic.io\/blog\/author\/brandy\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Announcing Ionic 8.5 - 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\/announcing-ionic-8-5","og_locale":"en_US","og_type":"article","og_title":"Announcing Ionic 8.5","og_description":"We are excited to announce the release of Ionic 8.5, bringing valuable updates to form controls, modals, and framework customization. This release enhances components like Checkbox, Select, and Toggle with new validation features, improves Sheet Modals with better scrolling behavior, and adds more control over styling and error logging. With React 19 support and key [&hellip;]","og_url":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5","og_site_name":"Ionic Blog","article_published_time":"2025-03-14T21:19:26+00:00","article_modified_time":"2025-03-19T14:36:25+00:00","og_image":[{"width":2240,"height":1120,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png","type":"image\/png"}],"author":"Brandy Smith","twitter_card":"summary_large_image","twitter_creator":"@ionicframework","twitter_site":"@ionicframework","twitter_misc":{"Written by":"Brandy Smith","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5"},"author":{"name":"Brandy Smith","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/fcd7940afdce3781b3381ec7c1b16c26"},"headline":"Announcing Ionic 8.5","datePublished":"2025-03-14T21:19:26+00:00","dateModified":"2025-03-19T14:36:25+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5"},"wordCount":624,"commentCount":0,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png","keywords":["Framework","Ionic"],"articleSection":["All","Announcements"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/announcing-ionic-8-5#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5","url":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5","name":"Announcing Ionic 8.5 - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png","datePublished":"2025-03-14T21:19:26+00:00","dateModified":"2025-03-19T14:36:25+00:00","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/announcing-ionic-8-5"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png","width":2240,"height":1120},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/announcing-ionic-8-5#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"Announcing Ionic 8.5"}]},{"@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\/fcd7940afdce3781b3381ec7c1b16c26","name":"Brandy Smith","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2024\/11\/headshot-zoomed-150x150.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2024\/11\/headshot-zoomed-150x150.png","caption":"Brandy Smith"},"url":"https:\/\/ionic.io\/blog\/author\/brandy"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2025\/03\/ionic-8-5-feature-image.png","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/6308","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\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/comments?post=6308"}],"version-history":[{"count":44,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/6308\/revisions"}],"predecessor-version":[{"id":6370,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/6308\/revisions\/6370"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/6309"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=6308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=6308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=6308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}