CoolFace
Apppublic

Pradipta01/Code_Generator

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
app.py61 linesDownload Raw Back to root
1import streamlit as st2import google.generativeai as genai3from dotenv import load_dotenv4import os5 6load_dotenv()7genai.configure(api_key=os.getenv("GEMINI_API_KEY"))8   9 10def generate_code(user_input, language):11    prompt = f"""12    Generate code in {language} that does the following:13 14    {user_input}15 16    Provide only the code, no explanations or comments unless absolutely necessary.17    Don't include any delimiters at the beginning and the ending of the code.18    """19    model = genai.GenerativeModel("gemini-1.5-flash")20    response = model.generate_content(prompt)21 22    return response.text23 24def main():25    user_input = st.text_input("Enter your query:")26    27    languages = ["Python", "JavaScript", "Java", "SQL", "C++", "C#","Go", "Swift","R", "Ruby"]28    chosen_language = st.selectbox("Choose a programming language:", languages)29 30    if st.button("Generate Code"):31        generated_code = generate_code(user_input, chosen_language)32        st.subheader("Generated Code:")33        st.code(generated_code)34 35        extensions = {  # Store extensions in a variable36            "Python": "py",37            "JavaScript": "js",38            "Java": "java",39            "SQL": "sql",40            "C++": "cpp",41            "C#": "cs",42            "Go": "go",43            "Swift": "swift",44            "R": "r",45            "Ruby": "rb",46        }47 48        extension = extensions.get(chosen_language, "txt")  # Get extension49 50        file_name = f"generated_code.{extension}"  # *Now* use f-string51 52        st.download_button(53            label="Download Code",54            data=generated_code,55            file_name=file_name,  # Use the pre-constructed filename56            mime="text/plain"57        )58 59 60if __name__ == "__main__":61    main()