CarrerasMX · sitio de pruebas

2 carreras · 14 páginas · 22 motores. Todo sale de un archivo de datos por carrera; cero código por carrera.

Abrir el generador de carreras →

Ahí se arma una carrera desde cero, se ve el sitio salir en vivo, y se descarga su archivo de datos. Esa pantalla no tiene un solo campo programado: se dibuja sola a partir del catálogo de configuración.

CarreraArquetipoBaseArquetipo OrganizadorSin confirmarBackofficeReglas levantadas
Carrera Rosa
La carrera · Convocatoria · Inscribirme · Fotos · Recorrido
Carrera con causa / familiar 57441 11 panel · mostrador causa-sin-destino
Medio Maratón de la Sierra
La carrera · Convocatoria · Inscribirme · Apoya la causa · Entrega de kits · Fotos · Resultados · Premios · Recorrido
Carrera competitiva con chip 34959 panel · mostrador ninguna
Cómo leer las columnas. Cada carrera tiene 102 opciones de configuración. Base son las que nadie tocó; Arquetipo las que llenó el preset al elegir qué clase de carrera es; Organizador las que él decidió encima. El arquetipo se aplica y desaparece — no queda un tipo guardado que el código pueda consultar después.
Reglas levantadas. El sistema se niega a publicar una carrera incoherente. Algunas de esas reglas admiten excepción — pero la excepción es un registro firmado (quién, por qué, cuándo), nunca un interruptor. Si aquí aparece una regla levantada, alguien puso su nombre. Las que son contradicción aritmética —cupo por talla sin capturar la talla— no admiten excepción de nadie.
Los motores corren en tu navegador, y son los mismos archivos. La página de inscripción calcula tu edad al día de la carrera, te dice tu categoría, hace aparecer los campos de tutor si eres menor y aplica las reglas del organizador — importando los mismos .mjs que corren en las pruebas. No hay copia para el navegador ni empaquetador: si hubiera, el archivo probado y el archivo servido dejarían de ser el mismo.
Ahora sí guarda. La inscripción entra a una base D1 real, con tenant_id en cada tabla y una firma por fila: si alguien cambia un dato directo en la base, la fila deja de validar y el panel lo dice. El organizador tiene su panel para ver quién se inscribió, cambiar estados y bajar el CSV. Cada movimiento queda con quién, cuándo y por qué.
Lo que todavía NO existe, dicho claro. No hay cobro en línea —el dinero se acuerda por WhatsApp— y no hay contador de cupo fuerte, que es otra pieza: un contador que no se equivoque con mil personas entrando a la vez no se hace con la base, se hace con un Durable Object. Mientras no exista, la carrera está configurada sin_cupo, que es no prometer lo que no se puede cumplir.