humano-promedio es una web de contenido —un pequeño almanaque de datos— sobre lo que le puede pasar al cuerpo de un humano promedio a lo largo de su vida. No es un panel de control, no es una herramienta de negocio y no es un producto de datos históricos: es una experiencia de lectura.
El producto presenta cifras cotidianas y corporales de una vida humana —pasos diarios, kilómetros caminados al año, horas de sueño, latidos del corazón— y las deja respirar solas en un campo de papel blanco. La intención es asombro tranquilo: la escala de una vida contada con números, no con gráficos ni insignias.
El público es cualquier persona curiosa, en general desde el teléfono y a menudo de noche. No se requiere cuenta, registro ni introducción de datos propios: se llega, se lee y se recorre.
Audiencia: público general curioso (persona "Visitante curioso").
humano-promedio es un sitio de lectura de una sola responsabilidad: mostrar datos curiosos sobre cosas que le pueden pasar a un humano promedio. La entrega actual es una superficie web propia de la aplicación, de acceso público y anónimo, sin autenticación ni cuentas.
Actores actuales
Comportamiento aceptado
Exclusiones vigentes
Entrega actual. El producto se entrega como una aplicación web propia con dos superficies públicas: Inicio y Datos curiosos. Ambas son de acceso anónimo (access_requirement: none): no existe identidad de aplicación, ni sesión, ni estado privado que conservar. El visitante no necesita crear cuenta para leer, explorar ni volver a visitar el contenido.
Propiedad de acceso. Toda la interacción humana ocurre en superficies propias de la aplicación. No hay proveedor externo, destino de terceros ni entrega headless. El contenido de datos curiosos es servido por la propia aplicación.
Frontera actual / futuro. Todo lo descrito en este documento es alcance actual. No se han aceptado requisitos futuros; cualquier idea de cuentas, contenido guardado, compartir o personalización queda fuera del alcance actual y no se implementa.
No aplica: no se ha suministrado ninguna directiva de referencia con content_source.
clamp(72px, 18vw, 220px) en tinta #1E1C19, ocupando el centro-izquierda óptico; "kilómetros en su vida" en 14px muted justo bajo la línea base; hairline de 1px a todo lo ancho bajo el número; sello circular de 28px #C0442A al final de la hairline; chevron descendente de dos trazos de 1px al centro inferior. Sin botón, sin imagen, sin degradado.prefers-reduced-motion; en caso contrario cuentan una sola vez al entrar.prefers-reduced-motion, revelación instantánea.FR-1 — Entrada pública que explica el producto Como Visitante curioso, quiero llegar a una entrada pública que me explique qué es humano-promedio, para quién es y qué hace, para decidir si quiero leerlo.
required_inference (página Inicio, entrada pública anónima).FR-2 — Explorar y leer datos curiosos sobre el humano promedio Como Visitante curioso, quiero explorar y leer datos curiosos sobre cosas que le pueden pasar a un humano promedio, para descubrir y comprender esas cifras.
explicit (requisito de contenido con datos curiosos sobre el humano promedio).FR-3 — Ver los datos concretos de caminar, dormir y corazón Como Visitante curioso, quiero ver datos como pasos diarios, kilómetros al año, horas de sueño y latidos del corazón, para conocer las cifras concretas de una vida humana.
explicit (datos nombrados: pasos diarios, kilómetros al año, horas de sueño, latidos del corazón).FR-4 — Recorrer el índice de todos los datos Como Visitante curioso, quiero ver un índice de todos los datos curiosos, para saber qué hay y volver a un dato concreto.
required_inference (índice como tabla de contenidos con puntos conductores, parte de la dirección creativa aceptada).FR-5 — Navegar entre Inicio y Datos curiosos Como Visitante curioso, quiero moverme entre la entrada y el destino de datos curiosos, para orientarme en el sitio.
required_inference (fila de navegación fija con wordmark y dos enlaces de texto).FR-6 — Leer sin introducir datos propios Como Visitante curioso, quiero leer y explorar sin introducir ningún dato mío, para que la experiencia sea solo de lectura.
explicit (el resultado exitoso es haber explorado y comprendido esos datos sin necesidad de introducir datos propios).FR-7 — Contenido no histórico Como Visitante curioso, quiero que el contenido trate sobre cosas que le pueden pasar a un humano y no sobre cosas históricas, para que el almanaque sea sobre el cuerpo y la vida cotidiana.
explicit (restricción dura: el contenido no debe ser de cosas históricas).Contexto de producto. Es una persona del público general que llega a humano-promedio desde el teléfono, a menudo de noche, sin una tarea que cumplir y sin intención de registrarse. No viene a analizar datos ni a comparar métricas: viene a leer.
Objetivo principal. Descubrir y recorrer contenido de datos curiosos sobre cosas que le pueden pasar a un humano promedio —pasos diarios, kilómetros al año, horas de sueño, latidos del corazón— y comprender esas cifras.
Responsabilidades aceptadas. Leer la propuesta del producto en la entrada; explorar y recorrer la secuencia de datos curiosos; consultar el índice para saber qué hay y volver a un dato concreto; navegar entre la entrada y el destino de datos curiosos.
Entradas y decisiones. No introduce ningún dato propio. Su única decisión es qué leer y en qué orden: desplazarse por la secuencia o saltar a un dato desde el índice.
Interacciones con otros participantes. No hay otros participantes humanos en el alcance actual. El único otro actor es el sistema de la aplicación, que sirve el contenido.
Éxito observable. Ha explorado y comprendido los datos curiosos sin necesidad de introducir datos propios.
Qué hace distinto a este rol. Su trabajo es de lectura y asombro tranquilo, no de operación: no configura, no guarda, no comparte, no compara. La diferencia no está en el título sino en que toda su interacción es pasiva y anónima, y el producto está diseñado para que así sea.
clamp(72px, 18vw, 220px) en tinta #1E1C19 cuenta una sola vez hasta su valor final en 900ms con ease-out y luego se detiene para siempre.Fallo / recuperación: si la página no carga, se muestra el estado de error del sistema con opción de reintentar la carga.
Movimiento reducido: el número se renderiza en su valor final de inmediato; no hay conteo ni deriva.
Fallo / recuperación: si el contenido no carga, se muestra el estado de error del sistema con opción de reintentar.
Movimiento reducido: todas las revelaciones son instantáneas, sin deriva ni dibujo de hairlines.
Fallo / recuperación: si el índice no carga, se muestra el estado de error del sistema con opción de reintentar.
Fallo / recuperación: si un enlace no resuelve o el contenido no carga, se muestra el estado de error del sistema con opción de reintentar.
Movimiento reducido: revelaciones instantáneas, sin deriva.
Musa: Kenya Hara. Titular: "El vacío como contenido: un número calmado respirando sobre papel blanco."
La dirección creativa es autoritativa para esta sección. La idea central es que el vacío es el diseño: un solo número enorme sentado solo en un campo de papel blanco, con una pequeña leyenda debajo. Los números tienen el peso de objetos de bodegón, no de mosaicos de panel.
| Rol | Hex | Uso |
|---|---|---|
| Fondo | #F4F1EA | Papel blanco / crudo; domina ~85% de cada pantalla |
| Superficie | #FBFAF6 | Superficie de papel |
| Texto | #1E1C19 | Tinta para tipografía y numerales gigantes |
| Primario | #1E1C19 | Tinta |
| Acento | #C0442A | Bermellón apagado; solo el sello hanko, la regla activa y el único contador en vivo; nunca más de ~3% de una pantalla |
| Apagado | #8C877C | Leyendas, unidades y metadatos |
Sin segundo color de acento en ningún lugar; sin tintes, sin degradados, sin sombras. El azul/índigo está prohibido en toda la paleta.
clamp(72px, 18vw, 220px) para que un solo valor llene la medida. Los títulos de sección usan la misma familia a 28–44px, Medium, tracking amplio de 0.08em, sentence case, nunca todo en mayúsculas.Casi ninguna forma. Las proporciones cuadradas y las hairlines de 1px (#1E1C19 al 12% de opacidad) hacen toda la estructuración. Las tarjetas no existen; en su lugar, cada dato es una banda horizontal de ancho completo separada por una hairline, con el número alineado a la izquierda y la leyenda colgada a un desplazamiento fijo de 6 columnas. La única forma curva en todo el producto es un pequeño sello circular rojo (28px, #C0442A) que marca cada dato como un hanko. Los botones son texto con un subrayado de 1px, no píldoras.
Rejilla de 12 columnas con márgenes muy amplios: ancho máximo de contenido 1120px a 1280px, 88% a 768px, y una sola columna con 24px de gutter a 375px. El ritmo vertical es extremadamente generoso —160px entre datos en escritorio, 88px en móvil— para que cada número llegue solo. Inicio es: una apertura de 100vh con un número y una línea de copy, luego una secuencia vertical lenta de datos, luego un índice silencioso de todos los datos como tabla de contenidos con puntos conductores. La navegación es una sola fila fija de hairline en la parte superior: el wordmark "humano promedio" a 15px a la izquierda y dos enlaces de texto a la derecha; se atenúa a 40% de opacidad sobre el contenido y vuelve a plena opacidad al hover o al hacer scroll hacia arriba.
Sin fotografía, sin ilustración, sin iconos, sin 3D. Los únicos artefactos visuales son los propios numerales, las hairlines y un pequeño sello rojo por dato. Donde se necesita una comparación, se dibuja como una sola regla vertical delgada con marcas y un segmento de tinta relleno —un diagrama, no un gráfico, en el espíritu de las marcas de medición de MUJI. La textura proviene del fondo de papel blanco y del propio peso de la tipografía, nada más.
La página de espécimen. La entrada pública de humano-promedio se compone como una página de un libro de especímenes tipográficos: un campo de papel blanco a 100vh (#F4F1EA) con nada encima excepto una línea de 19px en Shippori Mincho arriba a la izquierda —"Un humano promedio, mientras lees esto, ya ha caminado…"— y luego, ocupando el centro-izquierda óptico del viewport, el número 86.000 en Zen Kaku Gothic New Light a clamp(72px, 18vw, 220px), tinta #1E1C19, con "kilómetros en su vida" en 14px muted directamente bajo su línea base. Una hairline de 1px recorre todo el ancho bajo el número. El único color en la pantalla es un sello circular de 28px #C0442A colocado al final de la hairline. Un solo chevron descendente de dos trazos de 1px se sienta al centro inferior. Sin botón, sin imagen, sin degradado: la composición es una página de un libro de especímenes, y el vacío es el diseño.
Este concepto solo recompone contenido, estados y controles ya aceptados: el número, la leyenda, la unidad, la hairline, el sello y el chevron. No introduce ningún comportamiento, página ni destino nuevos.
Interaction Model: Static (direction) Motion Tempo: still Hero Dimensionality: flat
cubic-bezier(0.16, 1, 0.3, 1) → el número se detiene para siempre y la composición queda en reposo, con la hairline dibujada y el sello presionado.prefers-reduced-motion, todos los contadores renderizan sus valores finales de inmediato, todas las revelaciones son instantáneas y no hay deriva.NFR-1 — Acceso público anónimo
El sitio es de acceso público y anónimo. No hay cuentas, registro, inicio de sesión ni perfil. Provenance: explicit (contrato de páginas con access_requirement: none para ambas superficies; el resultado exitoso es explorar sin introducir datos propios). Rationale: el producto es una experiencia de lectura para público general curioso.
NFR-2 — Legibilidad y contraste El texto legible mantiene un contraste de al menos 4.5:1. No se usa texto gris claro por debajo de 4.5:1. Provenance: dirección creativa (evitar). Rationale: lectura nocturna en teléfono.
NFR-3 — Texto y controles completos en todo viewport
Los titulares, wordmarks, etiquetas, números, textos de tarjetas y controles permanecen completamente dentro del viewport y de su contenedor a 375px, 768px y 1280px, envolviendo o escalando (por ejemplo font-size: clamp(...) con su tamaño móvil) para ajustarse, y ningún otro elemento cubre ninguna parte de ellos. Provenance: dirección creativa (regla de legibilidad). Rationale: garantizar lectura completa en móvil, tableta y escritorio.
NFR-4 — Movimiento reducido
Con prefers-reduced-motion, todos los contadores renderizan sus valores finales de inmediato, todas las revelaciones son instantáneas y no hay deriva. Provenance: dirección creativa (movimiento). Rationale: accesibilidad y respeto por la preferencia del usuario.
NFR-5 — Rendimiento de lectura
La secuencia de datos se revela de forma fluida al hacer scroll, sin bloqueos ni saltos de layout. Provenance: required_inference (la experiencia de lectura depende de un scroll fluido). Rationale: el ritmo vertical generoso y las revelaciones por intersección requieren un renderizado estable.
NFR-6 — Contenido no histórico
El contenido no debe ser de cosas históricas; debe tratar sobre cosas que le pueden pasar a un humano. Provenance: explicit (restricción dura). Rationale: es la definición misma del producto.
basic_default — no especificado por el usuario; se elige React por ser el estándar para una experiencia de lectura web con animaciones de conteo y revelación por intersección.basic_default — no especificado por el usuario; se elige FastAPI por su simplicidad para servir contenido de solo lectura.basic_default — no especificado por el usuario; el contenido es fijo y de solo lectura.basic_default — no especificado por el usuario.basic_default — no especificado por el usuario.Supuestos
page_contract_version=1).required_inference a partir del contrato de acceso anónimo.Restricciones
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No comments yet. Be the first!