prakashkumarsingh commited on
Commit
f2604df
·
verified ·
1 Parent(s): 5c7e39e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -13
app.py CHANGED
@@ -1,15 +1,26 @@
1
- import pygame
2
- import gradio as gr
 
 
 
3
 
4
- def run_game(code):
5
- pygame.init()
6
- screen = pygame.display.set_mode((400, 300))
7
- pygame.display.set_caption("Headless Game")
8
- screen.fill((0, 128, 255))
9
- pygame.draw.circle(screen, (255, 0, 0), (200, 150), 75)
10
- pygame.image.save(screen, "output.png")
11
- pygame.quit()
12
- return "output.png"
13
 
14
- iface = gr.Interface(fn=run_game, inputs="text", outputs="image")
15
- iface.launch()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from fastapi import FastAPI, Request
2
+ from fastapi.responses import JSONResponse
3
+ import sys
4
+ import io
5
+ import traceback
6
 
7
+ app = FastAPI()
 
 
 
 
 
 
 
 
8
 
9
+ @app.post("/execute")
10
+ async def execute_code(request: Request):
11
+ data = await request.json()
12
+ code = data.get("code", "")
13
+ output = io.StringIO()
14
+ sys_stdout = sys.stdout
15
+ sys.stderr = sys.stderr
16
+ sys.stdout = output
17
+ sys.stderr = output
18
+ try:
19
+ exec(code, {})
20
+ result = output.getvalue()
21
+ except Exception:
22
+ result = output.getvalue() + "\n" + traceback.format_exc()
23
+ finally:
24
+ sys.stdout = sys_stdout
25
+ sys.stderr = sys.stderr
26
+ return JSONResponse({"result": resul