from dotenv import load_dotenv import streamlit as st import os import google.generativeai as genai import random from streamlit import session_state as state # Configurar la página con el sidebar colapsado st.set_page_config( page_title="Tu App", page_icon="🚀", layout="wide", initial_sidebar_state="collapsed" ) st.markdown(""" """, unsafe_allow_html=True) # Centrar el título y el subtítulo st.markdown("

Enchanted Hooks

", unsafe_allow_html=True) st.markdown("

Imagina poder conjurar títulos que no solo informan, sino que encantan. Esta app es tu varita mágica en el mundo del copywriting, transformando cada concepto en un titular cautivador que deja a todos deseando más.

", unsafe_allow_html=True) # Añadir CSS personalizado para el botón st.markdown(""" """, unsafe_allow_html=True) # Crear columnas col1, col2 = st.columns([1, 2]) # Columnas de entrada with col1: target_audience = st.text_input("¿Quién es tu público objetivo?", placeholder="Ejemplo: Estudiantes Universitarios") product = st.text_input("¿Qué producto tienes en mente?", placeholder="Ejemplo: Curso de Inglés") number_of_headlines = st.selectbox("Número de Titulares", options=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], index=4) # Crear un único acordeón para fórmula y creatividad with st.expander("Personaliza tus titulares"): temperature = st.slider("Creatividad", min_value=0.0, max_value=2.0, value=1.0, step=0.1) selected_formula_key = st.selectbox( "Selecciona una fórmula para tus titulares", options=list(headline_formulas.keys()) ) selected_formula = headline_formulas[selected_formula_key] # Botón de enviar submit = st.button("Generar Titulares") # Mostrar los titulares generados if submit: if target_audience and product and selected_formula: try: # Obtener la respuesta del modelo generated_headlines = generate_headlines(number_of_headlines, target_audience, product, temperature, selected_formula) col2.markdown(f"""

Observa la magia en acción:

{generated_headlines}

""", unsafe_allow_html=True) except ValueError as e: col2.error(f"Error: {str(e)}") else: col2.error("Por favor, proporciona el público objetivo, el producto y selecciona una fórmula.")