File size: 2,342 Bytes
67f9d7b 660b656 43d80bd f69fdac 43d80bd 0c56996 43d80bd f69fdac 43d80bd 0c56996 38c7720 f4f0212 0180e60 67f9d7b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
import os
import gradio as gr
from deployer.gradio_generator import deploy_callback, robot_behavior
def main():
with gr.Blocks() as demo:
gr.Markdown("# π RoboSage\nGenerate your custom robot app, download it, then test it live.")
with gr.Row():
# ββββββββββββββββββββββββββββββββ
# 1οΈβ£ Generate & Download App
# ββββββββββββββββββββββββββββββββ
with gr.Column():
gr.Markdown("## 1οΈβ£ Generate & Download App")
idea_input = gr.Textbox(
lines=2,
label="Your Robot Idea",
placeholder="e.g. A friendly greeting robot."
)
gen_button = gr.Button("Generate App & ZIP")
status_output = gr.Textbox(label="Status", interactive=False)
zip_output = gr.File(label="Download App ZIP")
gen_button.click(
fn=deploy_callback,
inputs=[idea_input],
outputs=[status_output, zip_output],
)
# ββββββββββββββββββββββββββββββββ
# 2οΈβ£ Robot Simulator
# ββββββββββββββββββββββββββββββββ
with gr.Column():
gr.Markdown("## 2οΈβ£ Robot Simulator")
cmd_input = gr.Textbox(
lines=1,
label="Command",
placeholder="say 'hello' or 'You rock!'"
)
sim_button = gr.Button("Send Command")
sim_output = gr.Textbox(label="Robot Response", interactive=False)
sim_button.click(
fn=robot_behavior,
inputs=[cmd_input],
outputs=[sim_output],
)
# Launch on 0.0.0.0 for Spaces, default port or override via PORT env
demo.launch(
server_name="0.0.0.0",
server_port=int(os.environ.get("PORT", 7860)),
share=False
)
if __name__ == "__main__":
main()
|