File size: 1,643 Bytes
0c6a7ce
5f90ea2
f285a88
 
 
 
 
 
 
 
 
 
 
cbefb39
 
 
f285a88
 
 
 
3e17712
0c6a7ce
7e5c4c4
 
 
 
ee8d1d0
6aedc61
5f90ea2
ee8d1d0
6aedc61
 
 
4417756
6aedc61
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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

import streamlit as st
import time

# Set page config
st.set_page_config(page_title="Gemini Code Reviewer", layout="wide")

# Animated text function
def animated_text(text, speed=0.05):
    placeholder = st.empty()
    displayed_text = ""
    for letter in text:
        displayed_text += letter
        placeholder.markdown(f"""
            <h1 style="text-align:center; color: #FF4500;">{displayed_text} 🚀</h1>
        """, unsafe_allow_html=True)  # Corrected f-string formatting
        time.sleep(speed)

# Display animated text
animated_text("Welcome to Gemini CodeReviewer using the Gemini API!", speed=0.1)




import google.generativeai as genai


# Configure Gemini API Key
genai.configure(api_key="AIzaSyBm0GOvYox4OyRG1WFOK7FT5fnNCHfubns")


# Function to get Gemini response
def get_gemini_response(prompt):
    model = genai.GenerativeModel("models/gemini-2.0-flash")
    response = model.generate_content(prompt)
    return response.text if response.text else "Sorry, I couldn't understand that."

# Chat interface
if "messages" not in st.session_state:
    st.session_state.messages = []

for message in st.session_state.messages:
    with st.chat_message(message["role"]):
        st.markdown(message["content"])

user_input = st.chat_input("Type your message...")

if user_input:
    st.session_state.messages.append({"role": "user", "content": user_input})
    with st.chat_message("user"):
        st.markdown(user_input)

    response = get_gemini_response(user_input)
    st.session_state.messages.append({"role": "assistant", "content": response})
    with st.chat_message("assistant"):
        st.markdown(response)