Update modules/ui/ui.py
Browse files- modules/ui/ui.py +355 -181
modules/ui/ui.py
CHANGED
|
@@ -204,12 +204,18 @@ def main():
|
|
| 204 |
|
| 205 |
#############################################################
|
| 206 |
#############################################################
|
|
|
|
| 207 |
def login_register_page(lang_code, t):
|
| 208 |
# Obtener traducciones específicas para landing page
|
| 209 |
landing_t = get_landing_translations(lang_code)
|
| 210 |
|
| 211 |
# Language selection dropdown at the top
|
| 212 |
-
languages = {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 213 |
|
| 214 |
# Estilo personalizado para mejorar el espaciado y alineación
|
| 215 |
st.markdown("""
|
|
@@ -230,87 +236,91 @@ def login_register_page(lang_code, t):
|
|
| 230 |
color: white !important;
|
| 231 |
border-radius: 5px 5px 0 0;
|
| 232 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 233 |
</style>
|
| 234 |
""", unsafe_allow_html=True)
|
| 235 |
-
####################################################################################################################################
|
| 236 |
-
|
| 237 |
-
# Pie de página legal (debe ir al final de la función)
|
| 238 |
-
footer_placeholder = st.empty()
|
| 239 |
-
footer_placeholder.markdown("""
|
| 240 |
-
<style>
|
| 241 |
-
#footer {
|
| 242 |
-
position: fixed;
|
| 243 |
-
bottom: 0;
|
| 244 |
-
left: 0;
|
| 245 |
-
width: 100%;
|
| 246 |
-
background-color: #f0f2f6;
|
| 247 |
-
color: #4f4f4f;
|
| 248 |
-
text-align: center;
|
| 249 |
-
padding: 10px;
|
| 250 |
-
font-size: 12px;
|
| 251 |
-
border-top: 1px solid #e6e6e6;
|
| 252 |
-
z-index: 100;
|
| 253 |
-
}
|
| 254 |
-
.main > div {
|
| 255 |
-
padding-bottom: 60px;
|
| 256 |
-
}
|
| 257 |
-
</style>
|
| 258 |
-
<div id="footer">
|
| 259 |
-
© 2025 NVIDIA, the NVIDIA logo are trademarks and/or registered trademarks of NVIDIA Corporation in the U.S. and other countries.
|
| 260 |
-
</div>
|
| 261 |
-
""", unsafe_allow_html=True)
|
| 262 |
-
|
| 263 |
-
#################################### LOGOS ################################################################################################
|
| 264 |
-
# Crear contenedor para logos y selector de idioma usando columnas de Streamlit
|
| 265 |
|
| 266 |
-
#
|
| 267 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 268 |
|
| 269 |
-
|
| 270 |
-
|
| 271 |
-
|
| 272 |
-
|
| 273 |
-
# with col2:
|
| 274 |
-
# Logo de ALPHA
|
| 275 |
-
# st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/ALPHA_Startup%20Badges.png", width=100)
|
| 276 |
|
| 277 |
-
|
| 278 |
-
|
| 279 |
-
|
|
|
|
| 280 |
|
| 281 |
-
|
| 282 |
-
|
| 283 |
-
|
|
|
|
| 284 |
|
| 285 |
-
with
|
| 286 |
-
|
| 287 |
-
|
| 288 |
-
|
| 289 |
-
list(languages.keys()),
|
| 290 |
-
index=list(languages.values()).index(lang_code),
|
| 291 |
-
key=f"landing_language_selector_{lang_code}"
|
| 292 |
-
)
|
| 293 |
-
new_lang_code = languages[selected_lang]
|
| 294 |
-
if lang_code != new_lang_code:
|
| 295 |
-
st.session_state.lang_code = new_lang_code
|
| 296 |
-
st.rerun()
|
| 297 |
|
|
|
|
|
|
|
| 298 |
# Main content with columns
|
| 299 |
left_column, right_column = st.columns([1, 3])
|
| 300 |
|
| 301 |
with left_column:
|
| 302 |
# ============================================
|
| 303 |
-
#
|
| 304 |
# ============================================
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 305 |
|
| 306 |
-
# Encabezado para resaltar la acción principal
|
| 307 |
st.markdown("""
|
| 308 |
-
|
| 309 |
-
|
| 310 |
-
<h3 style='margin: 0;'>🚀 Comienza</h3>
|
| 311 |
</div>
|
| 312 |
""", unsafe_allow_html=True)
|
| 313 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 314 |
# Crear tabs - REGISTRO siempre primero
|
| 315 |
tab_titles = [f"📝 {landing_t['register']}", f"🔐 {landing_t['login']}"]
|
| 316 |
tabs = st.tabs(tab_titles)
|
|
@@ -326,6 +336,7 @@ def login_register_page(lang_code, t):
|
|
| 326 |
with right_column:
|
| 327 |
display_videos_and_info(lang_code, landing_t)
|
| 328 |
|
|
|
|
| 329 |
#############################################################
|
| 330 |
#############################################################
|
| 331 |
def login_form(lang_code, landing_t):
|
|
@@ -348,8 +359,7 @@ def login_form(lang_code, landing_t):
|
|
| 348 |
st.rerun()
|
| 349 |
else:
|
| 350 |
st.error(landing_t['invalid_credentials'])
|
| 351 |
-
|
| 352 |
-
|
| 353 |
#############################################################
|
| 354 |
|
| 355 |
def register_form(lang_code, landing_t):
|
|
@@ -421,67 +431,269 @@ def is_institutional_email(email):
|
|
| 421 |
|
| 422 |
#############################################################
|
| 423 |
#############################################################
|
|
|
|
| 424 |
def display_videos_and_info(lang_code, landing_t):
|
| 425 |
-
#
|
| 426 |
-
|
| 427 |
-
|
| 428 |
-
|
| 429 |
-
"
|
| 430 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
| 431 |
])
|
| 432 |
|
| 433 |
# ============================================
|
| 434 |
-
# TAB 1:
|
| 435 |
# ============================================
|
| 436 |
-
with
|
| 437 |
-
|
| 438 |
-
|
| 439 |
-
|
| 440 |
-
|
| 441 |
-
|
| 442 |
-
|
| 443 |
-
|
| 444 |
-
|
| 445 |
-
|
| 446 |
-
|
| 447 |
-
|
| 448 |
-
|
| 449 |
-
|
| 450 |
-
|
| 451 |
-
|
| 452 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 453 |
|
| 454 |
-
|
| 455 |
-
|
| 456 |
-
*Google Research*
|
| 457 |
-
Investigación en IA interpretable para educación
|
| 458 |
|
| 459 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 460 |
|
| 461 |
-
|
| 462 |
-
|
| 463 |
-
*Tecnológico de Monterrey*
|
| 464 |
-
Programa de emprendimiento Deep Tech
|
| 465 |
-
""")
|
| 466 |
|
| 467 |
-
|
| 468 |
-
|
| 469 |
-
# st.info("Pronto lanzaremos el programa de beta testers")
|
| 470 |
|
| 471 |
# ============================================
|
| 472 |
-
# TAB
|
| 473 |
# ============================================
|
| 474 |
with tab_use_case:
|
| 475 |
-
st.markdown("### 🎯
|
| 476 |
|
| 477 |
use_case_videos = {
|
| 478 |
-
"📊
|
| 479 |
-
"🧠
|
| 480 |
-
"🎓
|
| 481 |
}
|
| 482 |
|
| 483 |
selected_title = st.selectbox(
|
| 484 |
-
"Selecciona un caso de uso:",
|
| 485 |
list(use_case_videos.keys())
|
| 486 |
)
|
| 487 |
|
|
@@ -495,52 +707,26 @@ def display_videos_and_info(lang_code, landing_t):
|
|
| 495 |
light=True
|
| 496 |
)
|
| 497 |
except Exception as e:
|
| 498 |
-
st.error(f"Error al cargar el video: {str(e)}")
|
| 499 |
-
st.image("https://via.placeholder.com/600x300/1E3A8A/FFFFFF?text=Demo+Video+Casos+de+Uso",
|
| 500 |
-
use_column_width=True)
|
| 501 |
-
|
| 502 |
-
# Descripción de casos de uso
|
| 503 |
-
st.markdown("""
|
| 504 |
-
---
|
| 505 |
-
### ¿Qué puedes hacer con AIdeaText?
|
| 506 |
-
|
| 507 |
-
**🎯 Para Estudiantes:**
|
| 508 |
-
• Visualizar tu proceso de pensamiento
|
| 509 |
-
• Recibir retroalimentación inmediata
|
| 510 |
-
• Mejorar tu redacción académica
|
| 511 |
-
• Seguir tu progreso cognitivo
|
| 512 |
-
|
| 513 |
-
**👨🏫 Para Profesores:**
|
| 514 |
-
• Evaluar comprensión profunda
|
| 515 |
-
• Identificar necesidades individuales
|
| 516 |
-
• Personalizar la enseñanza
|
| 517 |
-
• Ahorrar tiempo en corrección
|
| 518 |
-
|
| 519 |
-
**🏫 Para Instituciones:**
|
| 520 |
-
• Medir desarrollo cognitivo
|
| 521 |
-
• Mejorar resultados académicos
|
| 522 |
-
• Innovación educativa validada
|
| 523 |
-
• Datos para investigación
|
| 524 |
-
""")
|
| 525 |
|
| 526 |
# ============================================
|
| 527 |
-
# TAB
|
| 528 |
# ============================================
|
| 529 |
with tab_presentations:
|
| 530 |
-
st.markdown("### 🎬
|
| 531 |
|
| 532 |
videos = {
|
| 533 |
-
"🎬 Reel
|
| 534 |
-
"🏆
|
| 535 |
-
"🐍
|
| 536 |
-
"👨🏫
|
| 537 |
-
"🚀
|
| 538 |
-
"🎙️
|
| 539 |
-
"💻
|
| 540 |
}
|
| 541 |
|
| 542 |
selected_title = st.selectbox(
|
| 543 |
-
"Selecciona una presentación:",
|
| 544 |
list(videos.keys())
|
| 545 |
)
|
| 546 |
|
|
@@ -554,49 +740,37 @@ def display_videos_and_info(lang_code, landing_t):
|
|
| 554 |
light=True
|
| 555 |
)
|
| 556 |
except Exception as e:
|
| 557 |
-
st.error(f"Error al cargar el video: {str(e)}")
|
| 558 |
-
st.image("https://via.placeholder.com/600x300/1E3A8A/FFFFFF?text=Video+Presentación",
|
| 559 |
-
use_column_width=True)
|
| 560 |
-
|
| 561 |
-
# Eventos destacados
|
| 562 |
-
st.markdown("""
|
| 563 |
-
---
|
| 564 |
-
### 📅 Próximos Eventos
|
| 565 |
-
|
| 566 |
-
**2025**
|
| 567 |
-
• **WebSummit Rio 2025** - Abril 27-30, Río de Janeiro, Brasil
|
| 568 |
-
• **ISTE Conference 2025** - Junio 22-25, Denver, USA
|
| 569 |
-
• **EdTechX Europe 2025** - Octubre, Londres, UK
|
| 570 |
-
|
| 571 |
-
**Participaciones Confirmadas:**
|
| 572 |
-
• Showcase en WebSummit Rio
|
| 573 |
-
• Presentación en ISTE Learning Tools Competition
|
| 574 |
-
• Panel en EdTechX sobre IA en Educación
|
| 575 |
-
""")
|
| 576 |
|
| 577 |
# ============================================
|
| 578 |
-
# TAB
|
| 579 |
# ============================================
|
| 580 |
with tab_gallery:
|
| 581 |
-
st.markdown("### 📸
|
| 582 |
show_carousel()
|
| 583 |
|
| 584 |
-
#
|
| 585 |
-
st.markdown(""
|
| 586 |
-
|
| 587 |
-
|
| 588 |
-
|
| 589 |
-
|
| 590 |
-
|
| 591 |
-
|
| 592 |
-
|
| 593 |
-
|
| 594 |
-
|
| 595 |
-
• **Premio a la Innovación Educativa** - Congreso COMIE
|
| 596 |
-
• **Destacado en SENDA UNAM** - Seminario de Narrativas Digitales
|
| 597 |
-
• **Selección PyCon 2024** - Comunidad Python Latinoamérica
|
| 598 |
-
""")
|
| 599 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 600 |
#############################################################
|
| 601 |
#############################################################
|
| 602 |
# Definición de __all__ para especificar qué se exporta
|
|
|
|
| 204 |
|
| 205 |
#############################################################
|
| 206 |
#############################################################
|
| 207 |
+
|
| 208 |
def login_register_page(lang_code, t):
|
| 209 |
# Obtener traducciones específicas para landing page
|
| 210 |
landing_t = get_landing_translations(lang_code)
|
| 211 |
|
| 212 |
# Language selection dropdown at the top
|
| 213 |
+
languages = {
|
| 214 |
+
'English': 'en',
|
| 215 |
+
'Español': 'es',
|
| 216 |
+
'Français': 'fr',
|
| 217 |
+
'Português': 'pt'
|
| 218 |
+
}
|
| 219 |
|
| 220 |
# Estilo personalizado para mejorar el espaciado y alineación
|
| 221 |
st.markdown("""
|
|
|
|
| 236 |
color: white !important;
|
| 237 |
border-radius: 5px 5px 0 0;
|
| 238 |
}
|
| 239 |
+
/* Estilo para contenedor de inicio */
|
| 240 |
+
.start-container {
|
| 241 |
+
background: linear-gradient(135deg, #1E3A8A 0%, #3730A3 100%);
|
| 242 |
+
color: white;
|
| 243 |
+
padding: 15px;
|
| 244 |
+
border-radius: 10px 10px 0 0;
|
| 245 |
+
text-align: center;
|
| 246 |
+
margin-bottom: 10px;
|
| 247 |
+
}
|
| 248 |
+
.language-inline {
|
| 249 |
+
display: inline-block;
|
| 250 |
+
margin-left: 10px;
|
| 251 |
+
vertical-align: middle;
|
| 252 |
+
}
|
| 253 |
+
.logo-center {
|
| 254 |
+
text-align: center;
|
| 255 |
+
margin: 10px 0 20px 0;
|
| 256 |
+
}
|
| 257 |
</style>
|
| 258 |
""", unsafe_allow_html=True)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 259 |
|
| 260 |
+
# ============================================
|
| 261 |
+
# [1] LOGO AIdeaText CENTRADO - UNA SOLA FILA
|
| 262 |
+
# ============================================
|
| 263 |
+
st.markdown('<div class="logo-center">', unsafe_allow_html=True)
|
| 264 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/AIdeaText_Logo_vectores.png",
|
| 265 |
+
width=200)
|
| 266 |
+
st.markdown('</div>', unsafe_allow_html=True)
|
| 267 |
|
| 268 |
+
# ============================================
|
| 269 |
+
# LOGOS DE ALIADOS EN 3 COLUMNAS
|
| 270 |
+
# ============================================
|
| 271 |
+
col_logo1, col_logo2, col_logo3 = st.columns(3)
|
|
|
|
|
|
|
|
|
|
| 272 |
|
| 273 |
+
with col_logo1:
|
| 274 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/ALPHA_Startup%20Badges.png",
|
| 275 |
+
width=120)
|
| 276 |
+
st.caption("ALPHA Startup")
|
| 277 |
|
| 278 |
+
with col_logo2:
|
| 279 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/socialmedia/nvidia/nvidia-inception-program-badge-rgb-for-screen.png",
|
| 280 |
+
width=200)
|
| 281 |
+
st.caption("NVIDIA Inception")
|
| 282 |
|
| 283 |
+
with col_logo3:
|
| 284 |
+
st.image("https://via.placeholder.com/200x120/4F46E5/FFFFFF?text=incMTY\nAccelerator",
|
| 285 |
+
width=200)
|
| 286 |
+
st.caption("incMTY Accelerator")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 287 |
|
| 288 |
+
st.markdown("---")
|
| 289 |
+
|
| 290 |
# Main content with columns
|
| 291 |
left_column, right_column = st.columns([1, 3])
|
| 292 |
|
| 293 |
with left_column:
|
| 294 |
# ============================================
|
| 295 |
+
# [2] CONTENEDOR "COMIENZA" CON SELECTOR DE IDIOMA
|
| 296 |
# ============================================
|
| 297 |
+
st.markdown("""
|
| 298 |
+
<div class="start-container">
|
| 299 |
+
<h3 style='margin: 0;'>
|
| 300 |
+
🚀 Comienza en
|
| 301 |
+
<span class="language-inline">
|
| 302 |
+
""", unsafe_allow_html=True)
|
| 303 |
+
|
| 304 |
+
# Selector de idioma inline
|
| 305 |
+
selected_lang = st.selectbox(
|
| 306 |
+
"",
|
| 307 |
+
list(languages.keys()),
|
| 308 |
+
index=list(languages.keys()).index('English'), # [3.2] Inglés por defecto
|
| 309 |
+
label_visibility="collapsed",
|
| 310 |
+
key="landing_language_selector"
|
| 311 |
+
)
|
| 312 |
|
|
|
|
| 313 |
st.markdown("""
|
| 314 |
+
</span>
|
| 315 |
+
</h3>
|
|
|
|
| 316 |
</div>
|
| 317 |
""", unsafe_allow_html=True)
|
| 318 |
|
| 319 |
+
new_lang_code = languages[selected_lang]
|
| 320 |
+
if lang_code != new_lang_code:
|
| 321 |
+
st.session_state.lang_code = new_lang_code
|
| 322 |
+
st.rerun()
|
| 323 |
+
|
| 324 |
# Crear tabs - REGISTRO siempre primero
|
| 325 |
tab_titles = [f"📝 {landing_t['register']}", f"🔐 {landing_t['login']}"]
|
| 326 |
tabs = st.tabs(tab_titles)
|
|
|
|
| 336 |
with right_column:
|
| 337 |
display_videos_and_info(lang_code, landing_t)
|
| 338 |
|
| 339 |
+
|
| 340 |
#############################################################
|
| 341 |
#############################################################
|
| 342 |
def login_form(lang_code, landing_t):
|
|
|
|
| 359 |
st.rerun()
|
| 360 |
else:
|
| 361 |
st.error(landing_t['invalid_credentials'])
|
| 362 |
+
|
|
|
|
| 363 |
#############################################################
|
| 364 |
|
| 365 |
def register_form(lang_code, landing_t):
|
|
|
|
| 431 |
|
| 432 |
#############################################################
|
| 433 |
#############################################################
|
| 434 |
+
|
| 435 |
def display_videos_and_info(lang_code, landing_t):
|
| 436 |
+
# ============================================
|
| 437 |
+
# NUEVO ORDEN DE TABS CON 6 OPCIONES
|
| 438 |
+
# ============================================
|
| 439 |
+
tab_about, tab_programs, tab_competitions, tab_use_case, tab_presentations, tab_gallery = st.tabs([
|
| 440 |
+
"👥 About Us",
|
| 441 |
+
"🏆 Current Programs",
|
| 442 |
+
"💰 Competitions",
|
| 443 |
+
"🎯 Use Cases",
|
| 444 |
+
"🎬 Pitches & Presentations",
|
| 445 |
+
"📸 Events & Recognition"
|
| 446 |
])
|
| 447 |
|
| 448 |
# ============================================
|
| 449 |
+
# TAB 1: 👥 ABOUT US (NUEVO)
|
| 450 |
# ============================================
|
| 451 |
+
with tab_about:
|
| 452 |
+
about_texts = {
|
| 453 |
+
'en': """
|
| 454 |
+
**AIdeaText** is a digital technology company for human cognitive development based in Mexico.
|
| 455 |
+
Our solution has its core business in Semantic Reasoning Graphs (SRGs), a technological
|
| 456 |
+
configuration that makes the critical thinking process visible, connecting educational
|
| 457 |
+
training with business needs by implementing a cognitive development measurement system
|
| 458 |
+
based on advanced natural language processing.
|
| 459 |
+
|
| 460 |
+
We have been validated by the **NVIDIA Inception** program for emerging companies and are in
|
| 461 |
+
an advanced development stage with a functional MVP and a scalable business model in
|
| 462 |
+
Latin America.
|
| 463 |
+
|
| 464 |
+
**Our Mission:** To transform how the world measures and develops critical thinking.
|
| 465 |
+
**Our Vision:** To be the global standard for cognitive development assessment.
|
| 466 |
+
|
| 467 |
+
**Key Differentiators:**
|
| 468 |
+
• **First cognitive development measurement system** based on NLP
|
| 469 |
+
• **Semantic Reasoning Graphs** make thinking visible
|
| 470 |
+
• **Validated by NVIDIA** Inception Program
|
| 471 |
+
• **Scalable model** for Latin American education market
|
| 472 |
+
|
| 473 |
+
**Learn More:**
|
| 474 |
+
• [Functional MVP Demo](https://youtu.be/_4WMufl6MTA)
|
| 475 |
+
• [Business Model Presentation](https://youtu.be/Nt7IEas_P54)
|
| 476 |
+
""",
|
| 477 |
+
|
| 478 |
+
'es': """
|
| 479 |
+
**AIdeaText** es una empresa de tecnología digital para el desarrollo cognitivo humano con base en México.
|
| 480 |
+
Nuestra solución tiene su core business en los Grafos de Razonamiento Semántico (GRS), una configuración
|
| 481 |
+
tecnológica que hace visible el proceso de pensamiento crítico, conectando la formación educativa con las
|
| 482 |
+
necesidades empresariales implementando un sistema de medición del desarrollo cognitivo basado en el
|
| 483 |
+
procesamiento avanzado del lenguaje natural.
|
| 484 |
+
|
| 485 |
+
Hemos sido validados por el programa **NVIDIA Inception** para empresas emergentes y estamos en una fase
|
| 486 |
+
avanzada de desarrollo con un MVP funcional y un modelo de negocio escalable en Latinoamérica.
|
| 487 |
+
|
| 488 |
+
**Nuestra Misión:** Transformar cómo el mundo mide y desarrolla el pensamiento crítico.
|
| 489 |
+
**Nuestra Visión:** Ser el estándar global para la evaluación del desarrollo cognitivo.
|
| 490 |
+
|
| 491 |
+
**Diferenciadores Clave:**
|
| 492 |
+
• **Primer sistema de medición de desarrollo cognitivo** basado en PLN
|
| 493 |
+
• **Grafos de Razonamiento Semántico** hacen visible el pensamiento
|
| 494 |
+
• **Validado por NVIDIA** Inception Program
|
| 495 |
+
• **Modelo escalable** para el mercado educativo latinoamericano
|
| 496 |
+
|
| 497 |
+
**Conoce Más:**
|
| 498 |
+
• [Demo del MVP Funcional](https://youtu.be/_4WMufl6MTA)
|
| 499 |
+
• [Presentación del Modelo de Negocio](https://youtu.be/Nt7IEas_P54)
|
| 500 |
+
""",
|
| 501 |
+
|
| 502 |
+
'fr': """
|
| 503 |
+
**AIdeaText** est une entreprise de technologie numérique pour le développement cognitif humain basée au Mexique.
|
| 504 |
+
Notre solution a son cœur de métier dans les Graphes de Raisonnement Sémantique (GRS), une configuration
|
| 505 |
+
technologique qui rend visible le processus de pensée critique, connectant la formation éducative avec les
|
| 506 |
+
besoins des entreprises en mettant en œuvre un système de mesure du développement cognitif basé sur le
|
| 507 |
+
traitement avancé du langage naturel.
|
| 508 |
+
|
| 509 |
+
Nous avons été validés par le programme **NVIDIA Inception** pour les entreprises émergentes et nous sommes
|
| 510 |
+
dans une phase avancée de développement avec un MVP fonctionnel et un modèle commercial évolutif en Amérique latine.
|
| 511 |
+
|
| 512 |
+
**Notre Mission :** Transformer la façon dont le monde mesure et développe la pensée critique.
|
| 513 |
+
**Notre Vision :** Être la norme mondiale pour l'évaluation du développement cognitif.
|
| 514 |
+
""",
|
| 515 |
+
|
| 516 |
+
'pt': """
|
| 517 |
+
**AIdeaText** é uma empresa de tecnologia digital para o desenvolvimento cognitivo humano com base no México.
|
| 518 |
+
Nossa solução tem seu core business em Grafos de Raciocínio Semântico (GRS), uma configuração
|
| 519 |
+
tecnológica que torna visível o processo de pensamento crítico, conectando a formação educacional com as
|
| 520 |
+
necessidades empresariais implementando um sistema de medição do desenvolvimento cognitivo baseado no
|
| 521 |
+
processamento avançado de linguagem natural.
|
| 522 |
+
|
| 523 |
+
Fomos validados pelo programa **NVIDIA Inception** para empresas emergentes e estamos em uma fase
|
| 524 |
+
avançada de desenvolvimento com um MVP funcional e um modelo de negócios escalável na América Latina.
|
| 525 |
+
"""
|
| 526 |
+
}
|
| 527 |
|
| 528 |
+
about_content = about_texts.get(lang_code, about_texts['en'])
|
| 529 |
+
st.markdown(about_content)
|
|
|
|
|
|
|
| 530 |
|
| 531 |
+
# Botones para ver los videos
|
| 532 |
+
col1, col2 = st.columns(2)
|
| 533 |
+
with col1:
|
| 534 |
+
if st.button("🎬 Watch MVP Demo", use_container_width=True):
|
| 535 |
+
st.markdown("[https://youtu.be/_4WMufl6MTA](https://youtu.be/_4WMufl6MTA)")
|
| 536 |
+
with col2:
|
| 537 |
+
if st.button("💰 Business Model", use_container_width=True):
|
| 538 |
+
st.markdown("[https://youtu.be/Nt7IEas_P54](https://youtu.be/Nt7IEas_P54)")
|
| 539 |
+
|
| 540 |
+
# ============================================
|
| 541 |
+
# TAB 2: 🏆 CURRENT PROGRAMS (NUEVO)
|
| 542 |
+
# ============================================
|
| 543 |
+
with tab_programs:
|
| 544 |
+
st.markdown("### 🏆 Current Acceleration & Recognition Programs")
|
| 545 |
+
|
| 546 |
+
# Fila 1: NVIDIA Inception
|
| 547 |
+
col_nvidia_logo, col_nvidia_text = st.columns([1, 3])
|
| 548 |
+
with col_nvidia_logo:
|
| 549 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/socialmedia/nvidia/nvidia-inception-program-badge-rgb-for-screen.png",
|
| 550 |
+
width=150)
|
| 551 |
+
with col_nvidia_text:
|
| 552 |
+
st.markdown("""
|
| 553 |
+
**NVIDIA Inception Program**
|
| 554 |
+
*Exclusive program for AI and Deep Tech startups*
|
| 555 |
+
|
| 556 |
+
• **Access to NVIDIA GPUs** for training and inference
|
| 557 |
+
• **Technical mentoring** from NVIDIA engineers
|
| 558 |
+
• **Venture capital** opportunities ($250K+)
|
| 559 |
+
• **Market validation** and business development
|
| 560 |
+
• **Global network** of AI innovators
|
| 561 |
+
|
| 562 |
+
*Status: Active Member*
|
| 563 |
+
""")
|
| 564 |
+
|
| 565 |
+
st.markdown("---")
|
| 566 |
+
|
| 567 |
+
# Fila 2: ALPHA Startup
|
| 568 |
+
col_alpha_logo, col_alpha_text = st.columns([1, 3])
|
| 569 |
+
with col_alpha_logo:
|
| 570 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/ALPHA_Startup%20Badges.png",
|
| 571 |
+
width=150)
|
| 572 |
+
with col_alpha_text:
|
| 573 |
+
st.markdown("""
|
| 574 |
+
**ALPHA Startup Program**
|
| 575 |
+
*Market validation and scaling support*
|
| 576 |
+
|
| 577 |
+
• **Business model validation** with real customers
|
| 578 |
+
• **Growth strategy** development
|
| 579 |
+
• **Investor connections** and pitch coaching
|
| 580 |
+
• **Latin American market** expansion support
|
| 581 |
+
|
| 582 |
+
*Status: Graduate*
|
| 583 |
+
""")
|
| 584 |
+
|
| 585 |
+
st.markdown("---")
|
| 586 |
+
|
| 587 |
+
# Fila 3: incMTY
|
| 588 |
+
col_inc_logo, col_inc_text = st.columns([1, 3])
|
| 589 |
+
with col_inc_logo:
|
| 590 |
+
st.image("https://via.placeholder.com/150x150/4F46E5/FFFFFF?text=incMTY",
|
| 591 |
+
width=150)
|
| 592 |
+
with col_inc_text:
|
| 593 |
+
st.markdown("""
|
| 594 |
+
**incMTY Accelerator**
|
| 595 |
+
*Deep Tech acceleration program*
|
| 596 |
+
|
| 597 |
+
• **Seed funding** up to $50K
|
| 598 |
+
• **Mentorship** from industry experts
|
| 599 |
+
• **Prototype development** support
|
| 600 |
+
• **Pilot implementation** with educational institutions
|
| 601 |
+
|
| 602 |
+
*Status: Current Cohort*
|
| 603 |
+
""")
|
| 604 |
+
|
| 605 |
+
st.markdown("---")
|
| 606 |
+
|
| 607 |
+
# F6S en la sección de reconocimientos
|
| 608 |
+
st.markdown("### 🏅 Additional Recognition")
|
| 609 |
+
col_f6_logo, col_f6_text = st.columns([1, 3])
|
| 610 |
+
with col_f6_logo:
|
| 611 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/socialmedia/F6/F6S_Top_Company_EdTech_27.png",
|
| 612 |
+
width=150)
|
| 613 |
+
with col_f6_text:
|
| 614 |
+
st.markdown("""
|
| 615 |
+
**F6S Top 27 EdTech Companies**
|
| 616 |
+
*Global recognition as top education technology company*
|
| 617 |
+
|
| 618 |
+
• Selected among **5,000+ EdTech startups** worldwide
|
| 619 |
+
• **Top 27 global ranking** in education technology
|
| 620 |
+
• **Network access** to 3M+ founders and investors
|
| 621 |
+
|
| 622 |
+
*Status: Awarded 2024*
|
| 623 |
+
""")
|
| 624 |
+
|
| 625 |
+
# ============================================
|
| 626 |
+
# TAB 3: 💰 COMPETITIONS
|
| 627 |
+
# ============================================
|
| 628 |
+
with tab_competitions:
|
| 629 |
+
competitions_text = {
|
| 630 |
+
'en': """
|
| 631 |
+
## 🏆 Competing for $950K USD in Prizes
|
| 632 |
+
|
| 633 |
+
### 🥇 **Learning Tools Competition - $600K**
|
| 634 |
+
**Phase II - Top 50 Global**
|
| 635 |
+
*International Society for Technology in Education (ISTE)*
|
| 636 |
+
Competing with 1,200 projects from 75 countries
|
| 637 |
+
|
| 638 |
+
---
|
| 639 |
+
|
| 640 |
+
### 💰 **NVIDIA Inception - $250K**
|
| 641 |
+
**Venture Capital Program**
|
| 642 |
+
*NVIDIA Corporation*
|
| 643 |
+
Exclusive program for Deep Tech startups
|
| 644 |
+
|
| 645 |
+
---
|
| 646 |
+
|
| 647 |
+
### 🤖 **Kaggle/Google - $100K**
|
| 648 |
+
**Explainable AI Models**
|
| 649 |
+
*Google Research*
|
| 650 |
+
Research in interpretable AI for education
|
| 651 |
+
""",
|
| 652 |
+
|
| 653 |
+
'es': """
|
| 654 |
+
## 🏆 Competimos por $950K USD en Premios
|
| 655 |
+
|
| 656 |
+
### 🥇 **Learning Tools Competition - $600K**
|
| 657 |
+
**Fase II - Top 50 Global**
|
| 658 |
+
*International Society for Technology in Education (ISTE)*
|
| 659 |
+
Compitiendo con 1,200 proyectos de 75 países
|
| 660 |
+
|
| 661 |
+
---
|
| 662 |
+
|
| 663 |
+
### 💰 **NVIDIA Inception - $250K**
|
| 664 |
+
**Programa de Capital de Riesgo**
|
| 665 |
+
*NVIDIA Corporation*
|
| 666 |
+
Programa exclusivo para startups de Deep Tech
|
| 667 |
+
|
| 668 |
+
---
|
| 669 |
+
|
| 670 |
+
### 🤖 **Kaggle/Google - $100K**
|
| 671 |
+
**Modelos Explicables de IA**
|
| 672 |
+
*Google Research*
|
| 673 |
+
Investigación en IA interpretable para educación
|
| 674 |
+
"""
|
| 675 |
+
}
|
| 676 |
|
| 677 |
+
content = competitions_text.get(lang_code, competitions_text['en'])
|
| 678 |
+
st.markdown(content)
|
|
|
|
|
|
|
|
|
|
| 679 |
|
| 680 |
+
if st.button("🎯 Apply as Beta Tester", use_container_width=True):
|
| 681 |
+
st.info("Beta tester program launching Q1 2025")
|
|
|
|
| 682 |
|
| 683 |
# ============================================
|
| 684 |
+
# TAB 4: 🎯 USE CASES
|
| 685 |
# ============================================
|
| 686 |
with tab_use_case:
|
| 687 |
+
st.markdown("### 🎯 Use Cases - Demonstrations")
|
| 688 |
|
| 689 |
use_case_videos = {
|
| 690 |
+
"📊 Semantic Analysis Advanced": "https://youtu.be/_4WMufl6MTA",
|
| 691 |
+
"🧠 Reasoning Mapping": "https://youtu.be/hXnwUvN1Q9Q",
|
| 692 |
+
"🎓 Formative Assessment": "https://www.youtube.com/watch?v=Fqi4Di_Rj_s"
|
| 693 |
}
|
| 694 |
|
| 695 |
selected_title = st.selectbox(
|
| 696 |
+
"Select a use case:" if lang_code == 'en' else "Selecciona un caso de uso:",
|
| 697 |
list(use_case_videos.keys())
|
| 698 |
)
|
| 699 |
|
|
|
|
| 707 |
light=True
|
| 708 |
)
|
| 709 |
except Exception as e:
|
| 710 |
+
st.error(f"Error loading video: {str(e)}" if lang_code == 'en' else f"Error al cargar el video: {str(e)}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 711 |
|
| 712 |
# ============================================
|
| 713 |
+
# TAB 5: 🎬 PITCHES & PRESENTATIONS
|
| 714 |
# ============================================
|
| 715 |
with tab_presentations:
|
| 716 |
+
st.markdown("### 🎬 Pitches, Demos & Presentations")
|
| 717 |
|
| 718 |
videos = {
|
| 719 |
+
"🎬 AIdeaText Reel (90 seconds)": "https://youtu.be/hXnwUvN1Q9Q",
|
| 720 |
+
"🏆 SENDA UNAM Presentation": "https://www.youtube.com/watch?v=XFLvjST2cE0",
|
| 721 |
+
"🐍 PyCon 2024 Presentation": "https://www.youtube.com/watch?v=Jn545-IKx5Q",
|
| 722 |
+
"👨🏫 Ser Maaestro Foundation": "https://www.youtube.com/watch?v=imc4TI1q164",
|
| 723 |
+
"🚀 Tec de Monterrey Demo": "https://www.youtube.com/watch?v=Fqi4Di_Rj_s",
|
| 724 |
+
"🎙️ Interview with Dr. Guillermo Ruíz": "https://www.youtube.com/watch?v=_ch8cRja3oc",
|
| 725 |
+
"💻 Desktop Version Demo": "https://www.youtube.com/watch?v=nP6eXbog-ZY"
|
| 726 |
}
|
| 727 |
|
| 728 |
selected_title = st.selectbox(
|
| 729 |
+
"Select a presentation:" if lang_code == 'en' else "Selecciona una presentación:",
|
| 730 |
list(videos.keys())
|
| 731 |
)
|
| 732 |
|
|
|
|
| 740 |
light=True
|
| 741 |
)
|
| 742 |
except Exception as e:
|
| 743 |
+
st.error(f"Error loading video: {str(e)}" if lang_code == 'en' else f"Error al cargar el video: {str(e)}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 744 |
|
| 745 |
# ============================================
|
| 746 |
+
# TAB 6: 📸 EVENTS & RECOGNITION
|
| 747 |
# ============================================
|
| 748 |
with tab_gallery:
|
| 749 |
+
st.markdown("### 📸 Events Gallery & Recognition")
|
| 750 |
show_carousel()
|
| 751 |
|
| 752 |
+
# F6S Logo en esta sección
|
| 753 |
+
st.markdown("---")
|
| 754 |
+
st.markdown("### 🏅 Global Recognition")
|
| 755 |
+
|
| 756 |
+
col_f6s_logo, col_f6s_info = st.columns([1, 3])
|
| 757 |
+
with col_f6s_logo:
|
| 758 |
+
st.image("https://huggingface.co/spaces/AIdeaText/v5Prod/resolve/main/assets/img/socialmedia/F6/F6S_Top_Company_EdTech_27.png",
|
| 759 |
+
width=150)
|
| 760 |
+
with col_f6s_info:
|
| 761 |
+
st.markdown("""
|
| 762 |
+
**F6S Top 27 EdTech Companies 2024**
|
|
|
|
|
|
|
|
|
|
|
|
|
| 763 |
|
| 764 |
+
• **Global ranking** among 5,000+ EdTech startups
|
| 765 |
+
• **Network** of 3M+ founders and inve
|
| 766 |
+
|
| 767 |
+
stors
|
| 768 |
+
• **Validation** as promising education technology
|
| 769 |
+
|
| 770 |
+
*This recognition places AIdeaText among the most innovative
|
| 771 |
+
educational technology companies worldwide.*
|
| 772 |
+
""")
|
| 773 |
+
|
| 774 |
#############################################################
|
| 775 |
#############################################################
|
| 776 |
# Definición de __all__ para especificar qué se exporta
|