<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Embedding Charts from Qlik app to a React Website using : Enigma JS &amp;amp; Nebula JS ( works for Q... in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2444401#M20408</link>
    <description>&lt;P&gt;Hey &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/292774"&gt;@vishal_ravi&lt;/a&gt;&lt;/SPAN&gt; , I'm not understanding what is the issue, but if you are embedding Qlik charts from Qlik SaaS, please have a look to &lt;A href="https://qlik.dev/embed/qlik-embed/" target="_blank"&gt;qlik-embed&lt;/A&gt; where you can embed all the &lt;A href="https://qlik.dev/changelog/91-qlik-embed-classic-chart/" target="_blank"&gt;native charts&lt;/A&gt;.&lt;/P&gt;</description>
    <pubDate>Wed, 24 Apr 2024 14:47:03 GMT</pubDate>
    <dc:creator>alex_colombo</dc:creator>
    <dc:date>2024-04-24T14:47:03Z</dc:date>
    <item>
      <title>Embedding Charts from Qlik app to a React Website using : Enigma JS &amp; Nebula JS ( works for Qlik Client-managed )</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2443778#M20403</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hey everyone, I figured out how to display charts and insights from a Qlik app on my React website using Enigma JS &amp;amp; Nebula JS.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;This will come in handy, especially if you're working with a &lt;STRONG&gt;client-managed&lt;/STRONG&gt; setup, as embedded links and the Capability API support might be a bit lacking.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P data-unlink="true"&gt;Now, here's &lt;STRONG&gt;the catch&lt;/STRONG&gt; - this method works like a charm for Qlik's stack charts, but if you're jazzing up your charts with extensions like VizLib, you might hit a roadblock. Check out the supported chart types &lt;A href="https://qlik.dev/extend/extend-qlik-visualizations/supported-charts/" target="_self"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;H3&gt;First up, let's connect to your app with Enigma JS&lt;/H3&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;Install Enigma JS:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs"&gt;npm install enigma.js
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Bring it into your file:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-javascript"&gt;&lt;SPAN class="hljs-keyword"&gt;import&lt;/SPAN&gt; enigma &lt;SPAN class="hljs-keyword"&gt;from&lt;/SPAN&gt; &lt;SPAN class="hljs-string"&gt;"enigma.js"&lt;/SPAN&gt;;
&lt;SPAN class="hljs-keyword"&gt;import&lt;/SPAN&gt; schema &lt;SPAN class="hljs-keyword"&gt;from&lt;/SPAN&gt; &lt;SPAN class="hljs-string"&gt;"enigma.js/schemas/12.612.0.json"&lt;/SPAN&gt;;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Time to connect to your Qlik App:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-javascript"&gt;&lt;SPAN class="hljs-keyword"&gt;const&lt;/SPAN&gt; session = enigma.&lt;SPAN class="hljs-title function_"&gt;create&lt;/SPAN&gt;({
  schema,
  &lt;SPAN class="hljs-attr"&gt;createSocket&lt;/SPAN&gt;: &lt;SPAN class="hljs-function"&gt;(&lt;SPAN class="hljs-params"&gt;url&lt;/SPAN&gt;) =&amp;gt;&lt;/SPAN&gt; {
    &lt;SPAN class="hljs-keyword"&gt;const&lt;/SPAN&gt; socket = &lt;SPAN class="hljs-keyword"&gt;new&lt;/SPAN&gt; &lt;SPAN class="hljs-title class_"&gt;WebSocket&lt;/SPAN&gt;(url);
    socket.&lt;SPAN class="hljs-title function_"&gt;addEventListener&lt;/SPAN&gt;(&lt;SPAN class="hljs-string"&gt;"error"&lt;/SPAN&gt;, &lt;SPAN class="hljs-function"&gt;(&lt;SPAN class="hljs-params"&gt;event&lt;/SPAN&gt;) =&amp;gt;&lt;/SPAN&gt; {
      &lt;SPAN class="hljs-title function_"&gt;setError&lt;/SPAN&gt;(&lt;SPAN class="hljs-keyword"&gt;new&lt;/SPAN&gt; &lt;SPAN class="hljs-title class_"&gt;Error&lt;/SPAN&gt;(&lt;SPAN class="hljs-string"&gt;"WebSocket error"&lt;/SPAN&gt;));
      &lt;SPAN class="hljs-variable language_"&gt;console&lt;/SPAN&gt;.&lt;SPAN class="hljs-title function_"&gt;error&lt;/SPAN&gt;(&lt;SPAN class="hljs-string"&gt;"WebSocket error:"&lt;/SPAN&gt;, event);
    });
    &lt;SPAN class="hljs-keyword"&gt;return&lt;/SPAN&gt; socket;
  },
  &lt;SPAN class="hljs-attr"&gt;url&lt;/SPAN&gt;: &lt;SPAN class="hljs-string"&gt;"&amp;lt;ADD THE APP URL HERE&amp;gt;"&lt;/SPAN&gt;,
});

&lt;SPAN class="hljs-keyword"&gt;const&lt;/SPAN&gt; &lt;SPAN class="hljs-variable language_"&gt;global&lt;/SPAN&gt; = &lt;SPAN class="hljs-keyword"&gt;await&lt;/SPAN&gt; session.&lt;SPAN class="hljs-title function_"&gt;open&lt;/SPAN&gt;();
&lt;SPAN class="hljs-keyword"&gt;const&lt;/SPAN&gt; app = &lt;SPAN class="hljs-keyword"&gt;await&lt;/SPAN&gt; &lt;SPAN class="hljs-variable language_"&gt;global&lt;/SPAN&gt;.&lt;SPAN class="hljs-title function_"&gt;openDoc&lt;/SPAN&gt;(&lt;SPAN class="hljs-string"&gt;"&amp;lt;ADD THE DOC ID HERE&amp;gt;"&lt;/SPAN&gt;);
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;H3&gt;Moving on to Nebula JS for chart renderings:&lt;/H3&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;P&gt;Install Nebula JS:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-bash"&gt;npm install @nebula.js/stardust
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Bring in the "embed" function:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-javascript"&gt;&lt;SPAN class="hljs-keyword"&gt;import&lt;/SPAN&gt; { embed } &lt;SPAN class="hljs-keyword"&gt;from&lt;/SPAN&gt; &lt;SPAN class="hljs-string"&gt;"@nebula.js/stardust"&lt;/SPAN&gt;;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Let's dive into a Pie Chart:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;a. Get the sn-pie-chart:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-css"&gt;npm &lt;SPAN class="hljs-selector-tag"&gt;i&lt;/SPAN&gt; &lt;SPAN class="hljs-keyword"&gt;@nebula&lt;/SPAN&gt;.js/sn-pie-chart
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;P&gt;b. Import it:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-javascript"&gt;&lt;SPAN class="hljs-keyword"&gt;import&lt;/SPAN&gt; snPieChart &lt;SPAN class="hljs-keyword"&gt;from&lt;/SPAN&gt; &lt;SPAN class="hljs-string"&gt;"@nebula.js/sn-pie-chart"&lt;/SPAN&gt;;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;P&gt;c. Now, time to put that pie chart on display:&lt;/P&gt;
&lt;DIV class="dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium"&gt;
&lt;PRE class="p-4 overflow-y-auto"&gt;&lt;CODE class="!whitespace-pre hljs language-javascript"&gt;&lt;SPAN class="hljs-keyword"&gt;const&lt;/SPAN&gt; pieChartNebula = &lt;SPAN class="hljs-title function_"&gt;embed&lt;/SPAN&gt;(app, {
  &lt;SPAN class="hljs-attr"&gt;types&lt;/SPAN&gt;: [
    {
      &lt;SPAN class="hljs-attr"&gt;name&lt;/SPAN&gt;: &lt;SPAN class="hljs-string"&gt;"piechart"&lt;/SPAN&gt;,
      &lt;SPAN class="hljs-attr"&gt;load&lt;/SPAN&gt;: &lt;SPAN class="hljs-function"&gt;() =&amp;gt;&lt;/SPAN&gt; &lt;SPAN class="hljs-title class_"&gt;Promise&lt;/SPAN&gt;.&lt;SPAN class="hljs-title function_"&gt;resolve&lt;/SPAN&gt;(snPieChart),
    },
  ],
});

pieChartNebula.&lt;SPAN class="hljs-title function_"&gt;render&lt;/SPAN&gt;({
  &lt;SPAN class="hljs-attr"&gt;element&lt;/SPAN&gt;: &lt;SPAN class="hljs-variable language_"&gt;document&lt;/SPAN&gt;.&lt;SPAN class="hljs-title function_"&gt;getElementById&lt;/SPAN&gt;(&lt;SPAN class="hljs-string"&gt;"pie-chart"&lt;/SPAN&gt;),
  &lt;SPAN class="hljs-attr"&gt;id&lt;/SPAN&gt;: &lt;SPAN class="hljs-string"&gt;"&amp;lt;ADD THE PIE CHART'S OBJECT ID&amp;gt;"&lt;/SPAN&gt;,
});
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;I wouldn't exactly call this the top-notch method. If you happen to have any other ideas that might work better, I'd be super grateful if you could share them with me!&lt;BR /&gt;&lt;BR /&gt;&lt;FONT color="#808080"&gt;&lt;EM&gt;To know more about Nebula JS APIs -&amp;nbsp;&lt;A href="https://qlik.dev/apis/javascript/nebula-js/" target="_blank" rel="noopener"&gt;https://qlik.dev/apis/javascript/nebula-js/&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV&gt;&lt;STRONG&gt;Connect with Me&lt;BR /&gt;&lt;A href="https://www.linkedin.com/in/vishal-r-profile/" target="_self"&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="linkedin.png" style="width: 36px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/164505i534DA6DCBD987FDC/image-dimensions/36x36?v=v2" width="36" height="36" role="button" title="linkedin.png" alt="linkedin.png" /&gt;&lt;/span&gt;&lt;/A&gt;&lt;A href="https://twitter.com/Vishal__Ravi" target="_self"&gt;&amp;nbsp;&amp;nbsp;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="twitter.png" style="width: 36px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/164506iD3010CD1557418AE/image-dimensions/36x36?v=v2" width="36" height="36" role="button" title="twitter.png" alt="twitter.png" /&gt;&lt;/span&gt;&lt;/A&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 23 Apr 2024 07:34:35 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2443778#M20403</guid>
      <dc:creator>vishal_ravi</dc:creator>
      <dc:date>2024-04-23T07:34:35Z</dc:date>
    </item>
    <item>
      <title>Re: Embedding Charts from Qlik app to a React Website using : Enigma JS &amp; Nebula JS ( works for Q...</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2444401#M20408</link>
      <description>&lt;P&gt;Hey &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/292774"&gt;@vishal_ravi&lt;/a&gt;&lt;/SPAN&gt; , I'm not understanding what is the issue, but if you are embedding Qlik charts from Qlik SaaS, please have a look to &lt;A href="https://qlik.dev/embed/qlik-embed/" target="_blank"&gt;qlik-embed&lt;/A&gt; where you can embed all the &lt;A href="https://qlik.dev/changelog/91-qlik-embed-classic-chart/" target="_blank"&gt;native charts&lt;/A&gt;.&lt;/P&gt;</description>
      <pubDate>Wed, 24 Apr 2024 14:47:03 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2444401#M20408</guid>
      <dc:creator>alex_colombo</dc:creator>
      <dc:date>2024-04-24T14:47:03Z</dc:date>
    </item>
    <item>
      <title>Re: Embedding Charts from Qlik app to a React Website using : Enigma JS &amp; Nebula JS ( works for Q...</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2445043#M20417</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hey &lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/145804"&gt;@alex_colombo&lt;/a&gt;&amp;nbsp;, indeed, qlik-embed is a solid choice. You can also access its dedicated documentation for client management ( &lt;A href="https://qlik.dev/embed/qlik-embed/authenticate/connect-qlik-embed/#connecting-to-qlik-sense-client-managed-edition" target="_self"&gt;here&lt;/A&gt; ). However, I encountered a hurdle with qlik-embed due to insufficient information—I couldn't locate the data-host and data-login-uri. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Additionally, when I attempted to integrate it into my React.js website and ran it on localhost, I encountered an error stating, 'Third-party cookie will be blocked. Learn more in the Issues tab.' &lt;BR /&gt;&lt;BR /&gt;If anyone plans to explore this further, feel free to check out the docs that I referred:&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="https://qlik.dev/embed/qlik-embed/authenticate/connect-qlik-embed/#connecting-to-qlik-sense-client-managed-edition" target="_blank" rel="noopener"&gt;Connect qlik-embed web components to Qlik | Qlik Developer Portal&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;&lt;A href="https://community.qlik.com/t5/Design/Discovering-qlik-embed-Qlik-s-new-library-for-Embedding-Qlik/ba-p/2141202" target="_blank" rel="noopener"&gt; Discovering qlik-embed: Qlik’s new library for Emb... - Qlik Community - 2141202 &lt;/A&gt;&amp;nbsp; ( This one shows how you can implement it with react JS )&lt;BR /&gt;&lt;BR /&gt;&lt;FONT color="#808080"&gt;&lt;EM&gt;&lt;STRONG&gt;If anyone has managed to successfully implement qlik-embed on a client-managed setup using React JS, please share your experience in the comments below.&lt;/STRONG&gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 25 Apr 2024 20:19:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2445043#M20417</guid>
      <dc:creator>vishal_ravi</dc:creator>
      <dc:date>2024-04-25T20:19:49Z</dc:date>
    </item>
    <item>
      <title>Re: Embedding Charts from Qlik app to a React Website using : Enigma JS &amp; Nebula JS ( works for Q...</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2446093#M20436</link>
      <description>&lt;P&gt;Hey &lt;SPAN style="background: var(--ck-color-mention-background); color: var(--ck-color-mention-text);"&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/292774"&gt;@vishal_ravi&lt;/a&gt;&lt;/SPAN&gt; we know there are issues with qlik-embed an CM version. I also know that we have released some fixes on qlik-embed on the latest CM release (May 2024). Please have a look and if you see any issues please file a support case on our support portal.&lt;/P&gt;</description>
      <pubDate>Mon, 29 Apr 2024 07:38:16 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2446093#M20436</guid>
      <dc:creator>alex_colombo</dc:creator>
      <dc:date>2024-04-29T07:38:16Z</dc:date>
    </item>
    <item>
      <title>Re: Embedding Charts from Qlik app to a React Website using : Enigma JS &amp; Nebula JS ( works for Q...</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2465076#M20796</link>
      <description>&lt;P&gt;Hi - I am trying to get the same thing working and haven't had any luck.&amp;nbsp; Were you able to get this working?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jun 2024 18:56:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2465076#M20796</guid>
      <dc:creator>jroc26</dc:creator>
      <dc:date>2024-06-24T18:56:26Z</dc:date>
    </item>
    <item>
      <title>Re: Embedding Charts from Qlik app to a React Website using : Enigma JS &amp; Nebula JS ( works for Q...</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2526141#M22405</link>
      <description>&lt;P&gt;I think you missed to add in allowed list in qmc. You have to mention localhost:3000 in allowed list. then you won't get this cors issue&lt;/P&gt;</description>
      <pubDate>Mon, 04 Aug 2025 11:32:50 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Embedding-Charts-from-Qlik-app-to-a-React-Website-using-Enigma/m-p/2526141#M22405</guid>
      <dc:creator>vijaya6</dc:creator>
      <dc:date>2025-08-04T11:32:50Z</dc:date>
    </item>
  </channel>
</rss>

