import gradio as gr import os import base64 def generate_html(name, code): try: with open(f"{name}.html", "w") as f: f.write(code) return f"HTML file {name}.html generated successfully!" except Exception as e: return f"Error generating HTML file: {str(e)}" def download_file(name): try: with open(f"{name}.html", "rb") as f: bytes_data = f.read() encoded_data = base64.b64encode(bytes_data).decode("utf-8") return {"name": f"{name}.html", "data": encoded_data} except Exception as e: return None def generate_and_download(name, code): generate_html(name, code) return download_file(name) demo = gr.Interface( fn=generate_and_download, inputs=[ gr.Textbox(label="File Name"), gr.Code(label="HTML Code") ], outputs=gr.File(label="Download HTML File"), title="HTML Generator" ) demo.launch()