offerpk3 commited on
Commit
07af51e
·
verified ·
1 Parent(s): 17e758b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -17
app.py CHANGED
@@ -6,30 +6,22 @@ import uuid
6
  import time
7
 
8
  def extract_react_preview(code: str) -> str:
9
- react_template = f"""
10
- <!DOCTYPE html>
11
- <html lang=\"en\">
12
  <head>
13
- <meta charset=\"UTF-8\" />
14
- <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />
15
- <title>React Preview</title>
16
- <script crossorigin src=\"https://unpkg.com/react@18/umd/react.development.js\"></script>
17
- <script crossorigin src=\"https://unpkg.com/react-dom@18/umd/react-dom.development.js\"></script>
18
- <script src=\"https://unpkg.com/@babel/standalone/babel.min.js\"></script>
19
  </head>
20
  <body>
21
- <div id=\"root\"></div>
22
- <script type=\"text/babel\">
23
  {code}
24
  ReactDOM.createRoot(document.getElementById('root')).render(<App />);
25
  </script>
26
  </body>
27
  </html>
28
  """
29
- filename = f"react_preview_{uuid.uuid4().hex}.html"
30
- with open(filename, "w") as f:
31
- f.write(react_template)
32
- return filename
33
 
34
  def run_app(user_input, enhance_prompt, action, state, progress=gr.Progress()):
35
  progress(0, desc="Starting Gemini generation...")
@@ -54,10 +46,10 @@ def run_app(user_input, enhance_prompt, action, state, progress=gr.Progress()):
54
  f.write(zip_bytes)
55
 
56
  progress(0.9, desc="Generating preview...")
57
- preview_path = extract_react_preview(code_bundle["full_code"])
58
 
59
  progress(1.0, desc="Done!")
60
- return code_bundle["full_code"], "generated_app.zip", preview_path, code_bundle.get("files", {}), state
61
 
62
  with gr.Blocks(title="Auto App Builder") as iface:
63
  gr.Markdown("# ⚡ Auto App Builder (Gemini Powered)\n_Powered by Google Gemini API_")
 
6
  import time
7
 
8
  def extract_react_preview(code: str) -> str:
9
+ return f"""
10
+ <html>
 
11
  <head>
12
+ <script crossorigin src="https://unpkg.com/react@18/umd/react.development.js"></script>
13
+ <script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.development.js"></script>
14
+ <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
 
 
 
15
  </head>
16
  <body>
17
+ <div id='root'></div>
18
+ <script type='text/babel'>
19
  {code}
20
  ReactDOM.createRoot(document.getElementById('root')).render(<App />);
21
  </script>
22
  </body>
23
  </html>
24
  """
 
 
 
 
25
 
26
  def run_app(user_input, enhance_prompt, action, state, progress=gr.Progress()):
27
  progress(0, desc="Starting Gemini generation...")
 
46
  f.write(zip_bytes)
47
 
48
  progress(0.9, desc="Generating preview...")
49
+ preview_html = extract_react_preview(code_bundle["full_code"])
50
 
51
  progress(1.0, desc="Done!")
52
+ return code_bundle["full_code"], "generated_app.zip", preview_html, code_bundle.get("files", {}), state
53
 
54
  with gr.Blocks(title="Auto App Builder") as iface:
55
  gr.Markdown("# ⚡ Auto App Builder (Gemini Powered)\n_Powered by Google Gemini API_")