Skip to main content

Experimental empowered iFrame component based on existing HTML gradio component.

Project description

gradio_iframe

A custom gradio component to embed an iframe in a gradio interface. This component is based on the HTML component. It's currently still a work in progress.

Usage

The usage is similar to the HTML component. You can pass valid html and it will be rendered in the interface as an iframe, meaning you can embed any website or webapp that supports iframes. Also, JavaScript should run normal. You can even pass an iframe inside an iframe (see below!), i.e. a youtube or spotify embed.

The size will adjust to the size of the iframe (onload), this is gonna be a bit delayed. The width is default at 100%. You can also set the height and width manually.

Example

import gradio as gr
from gradio_iframe import iFrame

gr.Interface(
    iFrame(
        label="iFrame Example",
        value=("""
        <iframe width="560" 
            height="315" 
            src="https://www.youtube.com/embed/dQw4w9WgXcQ?si=QfHLpHZsI98oZT1G" 
            title="YouTube video player" 
            frameborder="0" 
            allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" 
            allowfullscreen>
        </iframe>"""),
        show_label=True)
)

Roadmap

  • Add manual hand over of other iFrame options.
  • Explore switch between src and srcdoc through variable.

Known Issues

There are many reason why it's not a good idea to embed websites in an iframe. See this, or just google "iframe security concerns" for more information. Also, iFrames will use additional computing power and memory, which can slow down the interface.

Also, this component is still a work in progress and not fully tested. Use at your own risk.

Other Issues

  • Height sometimes does not grow according to the inner component.
  • The component is not completely responsive yet and struggles with variable heigth.
  • ...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gradio_iframe-0.0.10.tar.gz (32.3 kB view details)

Uploaded Source

Built Distribution

gradio_iframe-0.0.10-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file gradio_iframe-0.0.10.tar.gz.

File metadata

  • Download URL: gradio_iframe-0.0.10.tar.gz
  • Upload date:
  • Size: 32.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for gradio_iframe-0.0.10.tar.gz
Algorithm Hash digest
SHA256 ac3ca8d1dbdb6a5dc0c56f4d93262c95eed25c4c7e3b49309c23ba15f9a3f75d
MD5 66c5728da740273c0537869540b13823
BLAKE2b-256 468ee0d96706b3e19ce5752d065627cd02d08d15d4c9802d6aa4e638e71aab5b

See more details on using hashes here.

File details

Details for the file gradio_iframe-0.0.10-py3-none-any.whl.

File metadata

File hashes

Hashes for gradio_iframe-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 91932be427abc4d724d4660bc97cb0f9975112a2b4e891840c5d48b489e9625d
MD5 9d288879143e8fefc22fc7ec99032060
BLAKE2b-256 4c6595e0a2df92a8509e0c7a265e34b29197bfc52a6f9dcff40613c72ee1789c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page