Saltar a contenido

SmartAid: documentación técnica

Plataforma Django multi-tenant para operar programas de becas gubernamentales. Todo el ciclo de vida — convocatoria, solicitud, evaluación, dictamen, padrón y pago — en una sola operación auditable.


Componentes de la plataforma

Portal público de SmartAid — registro de solicitantes
Público

Portal de solicitantes

Registro por CURP, convocatoria abierta, formulario de 8 pasos, carga de documentos y folio de seguimiento. Disponible 24/7 sin credenciales.

→ Ver documentación del portal
Panel administrativo de SmartAid — dashboard ejecutivo
Autenticado

Panel administrativo

Convocatorias, solicitantes, expedientes, scoring, dictamen, padrón, pagos y usuarios. Dashboard con métricas, embudo operativo y cobertura territorial.

→ Ver documentación del panel
Admin Django de SmartAid — configuración avanzada
Superusuario

Admin de Django

Configuración avanzada de tenants, usuarios, grupos y permisos. Historial de acciones nativo y acceso a modelos de dominio para operación técnica.

→ Ver administración avanzada
Landing page de SmartAid — presentación pública
Público

Landing page

Página de presentación pública con video promocional, efecto scroll expansivo, sección responsive con teléfono animado y FAQs interactivos. Servida en la raíz (/) sin autenticación.

→ Ver documentación de la landing

Mapa rápido

Necesidad Sección
Entender el flujo público del solicitante Usuarios
Operar módulos del panel Administración
Revisar el proceso completo Negocio
Entender componentes técnicos Arquitectura
Ver entidades y relaciones Modelo de datos
Levantar el proyecto local Onboarding
Consultar clases y servicios Referencia

Principios del sistema

  1. El portal público no crea cuenta de solicitante; usa CURP y folio.
  2. El panel administrativo requiere usuario autenticado y permisos de Django.
  3. Los datos de negocio pertenecen a un tenant (aislamiento total).
  4. Las notificaciones persistentes se guardan antes de emitirse por tiempo real.
  5. Los documentos y pagos se operan desde el panel, con auditoría e historial.
  6. La landing es estática, sin dependencias JS externas — todo es vanilla.

Generar este sitio

python -B manage.py build_docs --settings=config.settings.docs --no-strict

Build incremental durante desarrollo:

python -B -m mkdocs build --dirty --site-dir docs_site