Scrytorium / app.py
Scryptorium's picture
Update app.py
2b2816e verified
st.set_page_config(page_title="Scryptorium", layout="wide")
st.title("Scryptorium: La Forja Viva de Libros")
modo = st.sidebar.radio("Selecciona el módulo:", ["Libro Narrativo", "Libro para Pintar"])
if modo == "Libro Narrativo":
st.header("Generador de Libros Narrativos (100 hojas / 200 planas)")
idea = st.text_area("Describe tu idea, símbolo, escena o sinopsis inicial:")
tono = st.selectbox("Estilo de tono:", ["Épico", "Íntimo", "Místico", "Infantil", "Filosófico"])
activar_historia = st.button("Generar Libro")
if activar_historia and idea:
with st.spinner("Forjando las páginas desde el espíritu..."):
historia_generada = "[TEXTO DE LIBRO SIMULADO CON ESTILO SCRYPTORIUM]"
st.text_area("Vista previa:", historia_generada, height=600)
elif modo == "Libro para Pintar":
st.header("Generador de Libros para Pintar con Prepicado")
tema = st.text_input("Tema del libro (ej: Dragones, Felinos, Runas)")
cantidad = st.slider("¿Cuántas páginas quieres?", 4, 30, 10)
generar = st.button("Crear Libro para Pintar")
if generar and tema:
pdf = FPDF(format='A4')
for i in range(cantidad):
pdf.add_page()
pdf.set_font("Arial", size=16)
pdf.cell(200, 10, txt=f"{tema} - Página {i+1}", ln=True, align='C')
pdf.set_line_width(0.1)
pdf.dashed_line(10, 10, 200, 10, 1, 1)
pdf.set_font("Arial", size=12)
pdf.ln(10)
pdf.multi_cell(0, 10, txt="Colorea con libertad. Aquí habita la magia del color.")
nombre_archivo = f"Libro_para_colorear_{tema}.pdf"
pdf.output(nombre_archivo)
st.success("¡Libro creado!")
with open(nombre_archivo, "rb") as file:
st.download_button(label="Descargar PDF", data=file, file_name=nombre_archivo, mime="application/pdf")