{"id":2431,"date":"2024-09-06T16:54:23","date_gmt":"2024-09-06T15:54:23","guid":{"rendered":"https:\/\/codeflarelimited.com\/blog\/?p=2431"},"modified":"2024-09-06T17:27:46","modified_gmt":"2024-09-06T16:27:46","slug":"react-lazy-for-code-splitting","status":"publish","type":"post","link":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/","title":{"rendered":"Implementing Code Splitting in React with React.lazy"},"content":{"rendered":"\n<p>As your React applications grow in size, performance can become an issue, especially when dealing with large bundles of JavaScript files. Code splitting is a powerful technique to optimize the loading performance of your application by only loading the code that is needed at a given time. React makes this process easier with the introduction of <code>React.lazy()<\/code> for dynamic imports, allowing developers to implement code splitting seamlessly.  In this article, we\u2019ll explore how to use React.lazy for code splitting and how leveraging React.lazy for code splitting can greatly boost your React app\u2019s performance.<br><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>What is Code Splitting?<\/strong><\/h4>\n\n\n\n<p>Code splitting refers to breaking up your application&#8217;s code into smaller bundles or &#8220;chunks&#8221; that are loaded on demand. By doing this, you ensure that your users only download the necessary code to display the current page, resulting in faster initial load times and an overall better user experience.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Benefits of Code Splitting<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Faster Initial Load Times<\/strong>: Users only download what is necessary, improving the first meaningful paint.<\/li>\n\n\n\n<li><strong>Better Performance on Low Bandwidth<\/strong>: Code splitting can reduce data usage, which is particularly helpful on slower network connections.<\/li>\n\n\n\n<li><strong>Lazy Loading of Unused Components<\/strong>: You can load components only when they\u2019re needed, reducing the memory footprint of your application.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>React.lazy for Code Splitting<\/strong><\/h4>\n\n\n\n<p>React\u2019s <code>React.lazy()<\/code> function enables the dynamic import of components. Instead of importing everything at the top of your file, <code>React.lazy()<\/code> loads components when they are rendered for the first time, resulting in better performance.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\"><strong>Basic Example of React.lazy<\/strong><\/h5>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">import React, { Suspense } from 'react';\n\n\/\/ Use React.lazy to dynamically import the component\nconst LazyComponent = React.lazy(() =&gt; import('.\/MyComponent'));\n\nfunction App() {\n  return (\n    &lt;div className=\"App\"&gt;\n      {\/* Suspense is required to display a fallback while the component is being loaded *\/}\n      &lt;Suspense fallback={&lt;div&gt;Loading...&lt;\/div&gt;}&gt;\n        &lt;LazyComponent \/&gt;\n      &lt;\/Suspense&gt;\n    &lt;\/div&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<h5 class=\"wp-block-heading\">Explanation:<\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>React.lazy<\/strong>: The <code>React.lazy()<\/code> function dynamically imports the component when it is required. The argument it takes is a function that returns a promise from the <code>import()<\/code> method.<\/li>\n\n\n\n<li><strong>Suspense<\/strong>: Since the component is loaded asynchronously, you need a fallback UI (like a loading spinner) to display while the component is being fetched. This is done using the <code>Suspense<\/code> component, which takes a <code>fallback<\/code> prop that defines what should be displayed while waiting.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Code Splitting with Routes<\/strong><\/h4>\n\n\n\n<p>One of the most common use cases for <code>React.lazy<\/code> is with routing, where you can split the code for different pages. Here\u2019s an example of how you can apply code splitting with <code>React.lazy<\/code> and <code>React Router<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">import React, { Suspense } from 'react';\nimport { BrowserRouter as Router, Route, Switch } from 'react-router-dom';\n\n\/\/ Lazy load each route component\nconst Home = React.lazy(() =&gt; import('.\/Home'));\nconst About = React.lazy(() =&gt; import('.\/About'));\nconst Contact = React.lazy(() =&gt; import('.\/Contact'));\n\nfunction App() {\n  return (\n    &lt;Router&gt;\n      &lt;Suspense fallback={&lt;div&gt;Loading...&lt;\/div&gt;}&gt;\n        &lt;Switch&gt;\n          &lt;Route exact path=\"\/\" component={Home} \/&gt;\n          &lt;Route path=\"\/about\" component={About} \/&gt;\n          &lt;Route path=\"\/contact\" component={Contact} \/&gt;\n        &lt;\/Switch&gt;\n      &lt;\/Suspense&gt;\n    &lt;\/Router&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<h5 class=\"wp-block-heading\">Key Points:<\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Each route\u2019s component is dynamically imported using <code>React.lazy()<\/code>.<\/li>\n\n\n\n<li>The <code>Suspense<\/code> component ensures that a loading state is shown while each component is being loaded.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Handling Errors in Lazy Loading<\/strong><\/h4>\n\n\n\n<p>By default, React will not handle any errors that occur during the lazy loading of components. To add error boundaries around the lazy-loaded components, you can use React\u2019s <code>ErrorBoundary<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">import React, { Suspense } from 'react';\n\nconst LazyComponent = React.lazy(() =&gt; import('.\/MyComponent'));\n\nclass ErrorBoundary extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = { hasError: false };\n  }\n\n  static getDerivedStateFromError() {\n    return { hasError: true };\n  }\n\n  render() {\n    if (this.state.hasError) {\n      return &lt;div&gt;Error loading the component&lt;\/div&gt;;\n    }\n    return this.props.children;\n  }\n}\n\nfunction App() {\n  return (\n    &lt;div className=\"App\"&gt;\n      &lt;ErrorBoundary&gt;\n        &lt;Suspense fallback={&lt;div&gt;Loading...&lt;\/div&gt;}&gt;\n          &lt;LazyComponent \/&gt;\n        &lt;\/Suspense&gt;\n      &lt;\/ErrorBoundary&gt;\n    &lt;\/div&gt;\n  );\n}\n\nexport default App;\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Conclusion<\/strong><\/h3>\n\n\n\n<p>Code splitting using <code>React.lazy()<\/code> is an efficient way to improve the performance of your React application, especially when dealing with large projects. It helps in reducing load times by dynamically loading components when needed. With <code>React.Suspense<\/code>, the process of handling dynamic imports becomes seamless, making the user experience smoother without compromising on performance.<\/p>\n\n\n\n<p><a href=\"https:\/\/codeflarelimited.com\/blog\/react-context-api\/\">Understanding React.js Context API<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>As your React applications grow in size, performance can become an issue, especially when dealing with large bundles<\/p>\n","protected":false},"author":3,"featured_media":2435,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[73],"tags":[99],"class_list":["post-2431","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-react-js","tag-software-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>React.lazy for code splitting<\/title>\n<meta name=\"description\" content=\"Learn how to optimize your React applications using React.lazy for code splitting, enhancing performance by dynamically loading components ...\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"React.lazy for code splitting\" \/>\n<meta property=\"og:description\" content=\"Learn how to optimize your React applications using React.lazy for code splitting, enhancing performance by dynamically loading components ...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-06T15:54:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-06T16:27:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1120\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Kene Samuel\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/\"},\"author\":{\"name\":\"Kene Samuel\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#\\\/schema\\\/person\\\/c501609bab46c16807eb32106074f206\"},\"headline\":\"Implementing Code Splitting in React with React.lazy\",\"datePublished\":\"2024-09-06T15:54:23+00:00\",\"dateModified\":\"2024-09-06T16:27:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/\"},\"wordCount\":481,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/IMG-20240906-WA0005.jpg\",\"keywords\":[\"software development\"],\"articleSection\":[\"react js\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/\",\"url\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/\",\"name\":\"React.lazy for code splitting\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/IMG-20240906-WA0005.jpg\",\"datePublished\":\"2024-09-06T15:54:23+00:00\",\"dateModified\":\"2024-09-06T16:27:46+00:00\",\"description\":\"Learn how to optimize your React applications using React.lazy for code splitting, enhancing performance by dynamically loading components ...\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#primaryimage\",\"url\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/IMG-20240906-WA0005.jpg\",\"contentUrl\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/IMG-20240906-WA0005.jpg\",\"width\":1120,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-lazy-for-code-splitting\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"react js\",\"item\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/react-js\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Implementing Code Splitting in React with React.lazy\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/\",\"name\":\"\",\"description\":\"Sustainable solutions\",\"publisher\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#organization\",\"name\":\"Codeflare Limited\",\"url\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/11\\\/codeflare.png\",\"contentUrl\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/11\\\/codeflare.png\",\"width\":1040,\"height\":263,\"caption\":\"Codeflare Limited\"},\"image\":{\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/#\\\/schema\\\/person\\\/c501609bab46c16807eb32106074f206\",\"name\":\"Kene Samuel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3e1716cd715a5b5491e1f2da373b52f2f73aeb37d268baff34719116e386d848?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3e1716cd715a5b5491e1f2da373b52f2f73aeb37d268baff34719116e386d848?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3e1716cd715a5b5491e1f2da373b52f2f73aeb37d268baff34719116e386d848?s=96&d=mm&r=g\",\"caption\":\"Kene Samuel\"},\"url\":\"https:\\\/\\\/codeflarelimited.com\\\/blog\\\/author\\\/kene\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"React.lazy for code splitting","description":"Learn how to optimize your React applications using React.lazy for code splitting, enhancing performance by dynamically loading components ...","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:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/","og_locale":"en_US","og_type":"article","og_title":"React.lazy for code splitting","og_description":"Learn how to optimize your React applications using React.lazy for code splitting, enhancing performance by dynamically loading components ...","og_url":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/","article_published_time":"2024-09-06T15:54:23+00:00","article_modified_time":"2024-09-06T16:27:46+00:00","og_image":[{"width":1120,"height":630,"url":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg","type":"image\/jpeg"}],"author":"Kene Samuel","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#article","isPartOf":{"@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/"},"author":{"name":"Kene Samuel","@id":"https:\/\/codeflarelimited.com\/blog\/#\/schema\/person\/c501609bab46c16807eb32106074f206"},"headline":"Implementing Code Splitting in React with React.lazy","datePublished":"2024-09-06T15:54:23+00:00","dateModified":"2024-09-06T16:27:46+00:00","mainEntityOfPage":{"@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/"},"wordCount":481,"commentCount":0,"publisher":{"@id":"https:\/\/codeflarelimited.com\/blog\/#organization"},"image":{"@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#primaryimage"},"thumbnailUrl":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg","keywords":["software development"],"articleSection":["react js"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/","url":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/","name":"React.lazy for code splitting","isPartOf":{"@id":"https:\/\/codeflarelimited.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#primaryimage"},"image":{"@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#primaryimage"},"thumbnailUrl":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg","datePublished":"2024-09-06T15:54:23+00:00","dateModified":"2024-09-06T16:27:46+00:00","description":"Learn how to optimize your React applications using React.lazy for code splitting, enhancing performance by dynamically loading components ...","breadcrumb":{"@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#primaryimage","url":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg","contentUrl":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg","width":1120,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/codeflarelimited.com\/blog\/react-lazy-for-code-splitting\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/codeflarelimited.com\/blog\/"},{"@type":"ListItem","position":2,"name":"react js","item":"https:\/\/codeflarelimited.com\/blog\/react-js\/"},{"@type":"ListItem","position":3,"name":"Implementing Code Splitting in React with React.lazy"}]},{"@type":"WebSite","@id":"https:\/\/codeflarelimited.com\/blog\/#website","url":"https:\/\/codeflarelimited.com\/blog\/","name":"","description":"Sustainable solutions","publisher":{"@id":"https:\/\/codeflarelimited.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/codeflarelimited.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/codeflarelimited.com\/blog\/#organization","name":"Codeflare Limited","url":"https:\/\/codeflarelimited.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/codeflarelimited.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2020\/11\/codeflare.png","contentUrl":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2020\/11\/codeflare.png","width":1040,"height":263,"caption":"Codeflare Limited"},"image":{"@id":"https:\/\/codeflarelimited.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/codeflarelimited.com\/blog\/#\/schema\/person\/c501609bab46c16807eb32106074f206","name":"Kene Samuel","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/3e1716cd715a5b5491e1f2da373b52f2f73aeb37d268baff34719116e386d848?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/3e1716cd715a5b5491e1f2da373b52f2f73aeb37d268baff34719116e386d848?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3e1716cd715a5b5491e1f2da373b52f2f73aeb37d268baff34719116e386d848?s=96&d=mm&r=g","caption":"Kene Samuel"},"url":"https:\/\/codeflarelimited.com\/blog\/author\/kene\/"}]}},"jetpack_featured_media_url":"https:\/\/codeflarelimited.com\/blog\/wp-content\/uploads\/2024\/09\/IMG-20240906-WA0005.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/posts\/2431","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/comments?post=2431"}],"version-history":[{"count":2,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/posts\/2431\/revisions"}],"predecessor-version":[{"id":2437,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/posts\/2431\/revisions\/2437"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/media\/2435"}],"wp:attachment":[{"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/media?parent=2431"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/categories?post=2431"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codeflarelimited.com\/blog\/wp-json\/wp\/v2\/tags?post=2431"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}