import gradio as gr import tempfile import subprocess import os def clean_notebook(file): input_path = file.name output_path = tempfile.NamedTemporaryFile(delete=False, suffix=".ipynb").name subprocess.run(["bash", "app.sh", input_path, output_path], check=True) return output_path demo = gr.Interface( fn=clean_notebook, inputs=gr.File(file_types=[".ipynb"], label="Upload Notebook"), outputs=gr.File(label="Notebook Bersih"), title="Notebook Cleaner (jq)", description="Membersihkan metadata.widgets dari file .ipynb menggunakan jq" ) if __name__ == "__main__": demo.launch(server_name="0.0.0.0", server_port=7860)