Spaces:
Running
Running
import gradio as gr | |
import os | |
import subprocess | |
import zipfile | |
from pathlib import Path | |
def process_figma(figma_url, figma_token): | |
if not Path("Tkinter-Designer").exists(): | |
subprocess.run(["git", "clone", "https://github.com/ParthJadhav/Tkinter-Designer.git"], check=True) | |
print("Cloning to the github repo") | |
os.chdir("Tkinter-Designer") | |
conversion_command = [ | |
"python", | |
"-m", | |
"tkdesigner.cli", | |
figma_url, | |
figma_token | |
] | |
subprocess.run(conversion_command, check=True) | |
zip_file_path = "output.zip" | |
with zipfile.ZipFile(zip_file_path, 'w') as zip_file: | |
for foldername, subfolders, filenames in os.walk("build"): | |
for filename in filenames: | |
filepath = os.path.join(foldername, filename) | |
zip_file.write(filepath, os.path.relpath(filepath, "build")) | |
return zip_file_path | |
iface = gr.Interface( | |
fn=process_figma, | |
inputs=["text", "text"], | |
outputs="file", | |
title="Figma to Tkinter Converter", | |
description="Upload your Figma design by providing the URL and token." | |
) | |
if __name__ == "__main__": | |
iface.launch() | |