# Jupyverse connection to IPKernelApp within Qt/PySide app

**URL:** <https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836>\
**Category:** General\
**Tags:** how-to, help-wanted\
**Created:** [December 10, 2023, 9:43pm UTC](https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836 "2023-12-10T21:43:52Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jeandet](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.jupyter.org/jeandet/32/4747_2.png) [@jeandet](https://discourse.jupyter.org/u/jeandet)\
**Post date:** [December 10, 2023, 9:43pm UTC](https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836/1 "2023-12-10T21:43:53Z")

</div>

Hello all,

I was able to get both integrated and normal QtConsole example from here [https://github.com/ipython/ipykernel/tree/main/examples/embedding](https://github.com/ipython/ipykernel/tree/main/examples/embedding) running but I struggling to connect a notebook interface to an already running kernel inside a PySide app.  
From what I found the “simplest” way should be with jupyverse but I’m still unable to find my kernel from jupyterlab.  
Once my PySide app launched I get a json file in $HOME/.local/share/jupyter/runtime, the one I use to connect a QtConsole. I start jupyverse with:  
`jupyverse --set "kernels.allow_external_kernels=true" --set "kernels.external_connection_dir=/home/jeandet/.local/share/jupyter/runtime" --set "auth.mode=noauth" --port=8800 --open-browser `

From the browser I can’t see any running kernel, I sometimes get from the terminal (maybe related):

```auto
  File "/home/jeandet/PySide6.5.1Venv3.10/lib/python3.10/site-packages/fps_kernels/routes.py", line 154, in get_sessions
    kernel_id = session.kernel.id
AttributeError: 'dict' object has no attribute 'id'

```

Is there anything obvious I missed or I can do to fix/understand the issue? Any help is welcome 🙂 .

Best regards,  
Alexis.

---

<div class="post-metadata">

**Author:** ![Baldur\_van\_Lew](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.jupyter.org/baldur_van_lew/32/12318_2.png) [@Baldur\_van\_Lew](https://discourse.jupyter.org/u/Baldur_van_Lew)\
**Post date:** [February 5, 2024, 2:02pm UTC](https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836/2 "2024-02-05T14:02:52Z")

</div>

Hi @jeandet

did you ever resolve this? I’m attempting to do something similar with jupyverse. It’s not clear to me whether it is even reading the connection.json file I made.

Regards  
Baldur

---

<div class="post-metadata">

**Author:** ![jeandet](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.jupyter.org/jeandet/32/4747_2.png) [@jeandet](https://discourse.jupyter.org/u/jeandet)\
**Post date:** [February 5, 2024, 3:12pm UTC](https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836/3 "2024-02-05T15:12:34Z")

</div>

Hi @Baldur_van_Lew,  
I gave up with jupyverse and used the pyxll-jupyter solution [SciQLop/SciQLop/Jupyter at c494c95b641e391b120224f5bf9621c0412d75ab · SciQLop/SciQLop · GitHub](https://github.com/SciQLop/SciQLop/blob/c494c95b641e391b120224f5bf9621c0412d75ab/SciQLop/Jupyter/) the main trick here is that you must define entry-points then after I use this to spawn jupterlab:  
[SciQLop/SciQLop/backend/jupyter\_clients/jupyterlab.py at c494c95b641e391b120224f5bf9621c0412d75ab · SciQLop/SciQLop · GitHub](https://github.com/SciQLop/SciQLop/blob/c494c95b641e391b120224f5bf9621c0412d75ab/SciQLop/backend/jupyter_clients/jupyterlab.py#L44-L45). It’s still full of edge cases, specially PySide and IPykernel doesn’t play well together mainly because of the event loop.  
I wish you good luck with your project :).

---

<div class="post-metadata">

**Author:** ![Baldur\_van\_Lew](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.jupyter.org/baldur_van_lew/32/12318_2.png) [@Baldur\_van\_Lew](https://discourse.jupyter.org/u/Baldur_van_Lew)\
**Post date:** [February 6, 2024, 8:33am UTC](https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836/4 "2024-02-06T08:33:09Z")

</div>

Many thanks @jeandet !

I’ll probably go with a similar solution. I’ve also opened a [new issue in Github](https://github.com/jupyter-server/jupyverse/issues/385) on this.

---

<div class="post-metadata">

**Author:** ![jeandet](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.jupyter.org/jeandet/32/4747_2.png) [@jeandet](https://discourse.jupyter.org/u/jeandet)\
**Post date:** [April 12, 2026, 7:52am UTC](https://discourse.jupyter.org/t/jupyverse-connection-to-ipkernelapp-within-qt-pyside-app/22836/5 "2026-04-12T07:52:19Z")

</div>

@Baldur_van_Lew for the record, I ended up making this project [GitHub - SciQLop/jupyqt: Embed JupyterLab in PySide6 applications · GitHub](https://github.com/SciQLop/jupyqt)
