Mpavan45 commited on
Commit
91ef086
Β·
verified Β·
1 Parent(s): 3e437b9

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +28 -30
app.py CHANGED
@@ -1,5 +1,6 @@
1
  import streamlit as st
2
  import time
 
3
 
4
  # Animated text function
5
  def animated_text(text, speed=0.05):
@@ -9,14 +10,12 @@ def animated_text(text, speed=0.05):
9
  displayed_text += letter
10
  placeholder.markdown(f"""
11
  <h1 style="text-align:center; color: #FF4500;">{displayed_text} πŸš€</h1>
12
- """, unsafe_allow_html=True) # Corrected f-string formatting
13
  time.sleep(speed)
14
 
15
  # Display animated text
16
  animated_text("Welcome to GenAI App - AI Code Reviewer!", speed=0.1)
17
 
18
- import google.generativeai as genai
19
-
20
  # Set up Google Gemini API Key
21
  genai.configure(api_key="AIzaSyBm0GOvYox4OyRG1WFOK7FT5fnNCHfubns")
22
 
@@ -29,41 +28,40 @@ buggy_code = st.text_area("🐞 Enter your buggy code here:", height=200)
29
  # Function to Debug Code Using Gemini AI
30
  def debug_code_with_gemini(code):
31
  prompt = f"Debug the following code and provide the corrected version:\n\n{code}"
32
-
33
  model = genai.GenerativeModel("models/gemini-2.0-flash")
34
  response = model.generate_content(prompt)
35
-
36
  return response.text if response.text else "⚠️ Error in AI response."
37
 
38
  # Function to Generate Code Improvement Suggestions
39
  def get_suggestions_with_gemini(code):
40
  prompt = f"Suggest improvements for the following code, focusing on best practices, performance optimization, and readability:\n\n{code}"
41
-
42
  model = genai.GenerativeModel("gemini-pro")
43
  response = model.generate_content(prompt)
44
-
45
  return response.text if response.text else "⚠️ No suggestions available."
46
 
47
- # Process Code When Input is Given
48
- if buggy_code:
49
- with st.spinner("πŸ› οΈ Debugging your code..."):
50
- fixed_code = debug_code_with_gemini(buggy_code)
51
-
52
- with st.spinner("πŸ” Generating suggestions..."):
53
- suggestions = get_suggestions_with_gemini(fixed_code)
54
-
55
- # Display Fixed Code
56
- st.subheader("βœ… Fixed Code:")
57
- st.code(fixed_code, language="python") # Adjust language if needed
58
-
59
- # Copy Button for Fixed Code
60
- st.download_button(
61
- label="πŸ“‹ Copy Fixed Code",
62
- data=fixed_code,
63
- file_name="fixed_code.py",
64
- mime="text/plain"
65
- )
66
-
67
- # Display AI-Generated Suggestions
68
- st.subheader("πŸ’‘ Suggestions for Improvement:")
69
- st.write(suggestions)
 
 
 
 
1
  import streamlit as st
2
  import time
3
+ import google.generativeai as genai
4
 
5
  # Animated text function
6
  def animated_text(text, speed=0.05):
 
10
  displayed_text += letter
11
  placeholder.markdown(f"""
12
  <h1 style="text-align:center; color: #FF4500;">{displayed_text} πŸš€</h1>
13
+ """, unsafe_allow_html=True)
14
  time.sleep(speed)
15
 
16
  # Display animated text
17
  animated_text("Welcome to GenAI App - AI Code Reviewer!", speed=0.1)
18
 
 
 
19
  # Set up Google Gemini API Key
20
  genai.configure(api_key="AIzaSyBm0GOvYox4OyRG1WFOK7FT5fnNCHfubns")
21
 
 
28
  # Function to Debug Code Using Gemini AI
29
  def debug_code_with_gemini(code):
30
  prompt = f"Debug the following code and provide the corrected version:\n\n{code}"
 
31
  model = genai.GenerativeModel("models/gemini-2.0-flash")
32
  response = model.generate_content(prompt)
 
33
  return response.text if response.text else "⚠️ Error in AI response."
34
 
35
  # Function to Generate Code Improvement Suggestions
36
  def get_suggestions_with_gemini(code):
37
  prompt = f"Suggest improvements for the following code, focusing on best practices, performance optimization, and readability:\n\n{code}"
 
38
  model = genai.GenerativeModel("gemini-pro")
39
  response = model.generate_content(prompt)
 
40
  return response.text if response.text else "⚠️ No suggestions available."
41
 
42
+ # Generate Button
43
+ if st.button("πŸš€ Analyze & Optimize Code"):
44
+ if buggy_code:
45
+ with st.spinner("πŸ› οΈ Debugging your code..."):
46
+ fixed_code = debug_code_with_gemini(buggy_code)
47
+
48
+ with st.spinner("πŸ” Generating suggestions..."):
49
+ suggestions = get_suggestions_with_gemini(fixed_code)
50
+
51
+ # Display Fixed Code
52
+ st.subheader("βœ… Fixed Code:")
53
+ st.code(fixed_code, language="python")
54
+
55
+ # Copy Button for Fixed Code
56
+ st.download_button(
57
+ label="πŸ“‹ Copy Fixed Code",
58
+ data=fixed_code,
59
+ file_name="fixed_code.py",
60
+ mime="text/plain"
61
+ )
62
+
63
+ # Display AI-Generated Suggestions
64
+ st.subheader("πŸ’‘ Suggestions for Improvement:")
65
+ st.write(suggestions)
66
+ else:
67
+ st.warning("⚠️ Please enter some code before generating fixes and suggestions!")