amer21/blender-kaggle-hub
๐จ Blender Desktop on Kaggle โ from your Android phone Run the full Blender GUI on a Kaggle Linux notebook (Kaggle CPU + GPU do the work) and control it remotely from any Android phone โ no PC needed. โโโโโโโโโโโโโโโโโโโโ public https URL โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ Android phone โ โโโโโโโโโโโโโโโโโโโโโถ โ Kaggle notebook (Linux x86_64 + T4/P100) โ โ Chrome / Edge โ (Cloudflare quick โ โ โ โ noVNCโฆ See the full description on the dataset page: https://huggingface.co/datasets/amer21/blender-kaggle-hub.
๐จ Blender Desktop on Kaggle โ from your Android phone
Run the full Blender GUI on a Kaggle Linux notebook (Kaggle CPU + GPU do the work) and control it remotely from any Android phone โ no PC needed.
โโโโโโโโโโโโโโโโโโโโ public https URL โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Android phone โ โโโโโโโโโโโโโโโโโโโโโถ โ Kaggle notebook (Linux x86_64 + T4/P100) โ
โ Chrome / Edge โ (Cloudflare quick โ โ
โ โ noVNC web UI โ tunnel, cloudflared)โ Blender GUI โโโถ Xvfb :99 (virtual X) โ
โโโโโโโโโโโโโโโโโโโโ โ โฒ โ โ
โ โ renders to โผ โ
โ Cycles GPU (OptiX/CUDA, N GPUs) x11vnc โ
โ (VNC :5901) โ
โ โ
โ noVNC/websockify (:6080) โโโโโโโโโโโโโโโโโโ
โ /kaggle/working โ your .blend files + backups
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโHow it works (and the honest trade-offs)
Security note: the tunnel URL is unguessable but anyone who has it can see your Blender. It dies with the session. If you need auth, put an nginx auth_basic or a WireGuard tunnel in front (out of scope here).
Quick start (Kaggle)
- New Notebook โ set GPU: T4 (optional but recommended) and Internet: On (required).
- Paste
notebook.ipynbโ Cell 1 (or clone this repo into Kaggle and run). - First run takes ~3โ6 min (apt packages + ~350 MB Blender download; cached for the session).
- It prints a
https://xxxx.trycloudflare.comURL โ open it on your phone. - Run Cell 2 (component tests) and Cell 3 (GPU render smoke test).
The 3-line copy-paste (if you don't use the .ipynb)
!rm -rf /kaggle/working/blender-kaggle && git clone --depth 1 https://github.com/amerameryou1-blip/blender-kaggle-desktop.git /kaggle/working/blender-kaggle
!cd /kaggle/working/blender-kaggle && WORKDIR=/kaggle/working bash setup.sh && WORKDIR=/kaggle/working bash launch.sh
!cat /kaggle/working/blender-env/tunnel.urlConnecting from Android (Xiaomi Redmi Note 14 Pro 4G / any Android)
- Chrome/Edge โ paste the tunnel URL โ VNC screen โ Connect (no password by default).
- Landscape + fullscreen (โคข) + tap once so input reaches Blender.
- Chrome โฎ โ Add to Home screen for an app-like launcher icon.
- Touch mapping (noVNC): one finger = left mouse drag (orbit/move). No mouse wheel โ zoom with the viewport toolbar (magnifier +/โ, โ frame), pan with the 2D-pan arrows or
SHIFT+middle-equivalent via keyboard layout. Menus: tap. For more precision use the noVNC toolbar (top-right of the page).
What's in the repo
GPU notes (read this)
- 1ร or 2ร T4, or 1ร P100: all supported. Cycles renders on all enabled GPUs (real multi-GPU).
startup_blender.pyprefers OptiX (fastest on both Turing and Volta with a recent driver) and falls back to CUDA, then CPU. - Kaggle driver quirk: if Cycles reports no GPU devices even though
nvidia-smiworks,setup.shalready adds/usr/local/nvidia/lib64toLD_LIBRARY_PATH(seeblender-env/env.sh). Re-runlaunch.sh. - Viewport โ render: the viewport you see over VNC is CPU software GL. "Cycles" viewport shading will still compute on GPU but display through the software GL pipeline โ for phone use, model in Solid, hit Render (F12) for GPU results (save renders to
/kaggle/working). - Multi-GPU โ 2ร speed everywhere: Cycles partitions work across GPUs, but viewports, geometry booleans, sculpting etc. stay single-core/CPU.
Persistence strategy (Hugging Face is your storage)
To update the hub (after editing scripts): push to GitHub, then re-upload the changed files to amer21/blender-kaggle-hub (one upload_file call per file).
