🕓 Entrada del 2026-04-14, actualizada el 2026-05-09. Los SDK de TS / Python / PHP ya están en los registros públicos:
@astroway/sdk(npm),astroway(PyPI),astroway/sdk(Packagist). Detalles en el changelog.
Human Design pasó de ser un sistema esotérico de nicho de los años 90 a un marco de desarrollo personal de uso masivo. Apps con millones de usuarios lo han normalizado, y los desarrolladores se preguntan: ¿cómo se calcula una carta de Human Design por código?
En este post vemos el lado técnico: qué implica el cálculo de HD, qué API lo soportan y cómo integrar una función de HD en tu app.
Qué es Human Design desde el punto de vista técnico
Sección titulada «Qué es Human Design desde el punto de vista técnico»Human Design se apoya en tres sistemas clásicos:
- Astrología occidental: posiciones de los planetas en el momento del nacimiento
- I Ching: 64 hexagramas asignados a 64 “puertas”
- Sistema de chakras: nueve “centros” (nodos energéticos)
El cálculo toma los datos de nacimiento y devuelve un bodygraph, un mapa visual con:
- Type (Manifestor, Generator, Manifesting Generator, Projector, Reflector): la firma energética
- Strategy: cómo tomar decisiones
- Authority: en qué centro confiar al decidir (Sacral, Emotional, Splenic, etc.)
- Profile: combinación de líneas (1/3, 4/6, etc.)
- Channels: conexiones entre centros que forman la personalidad
- Incarnation Cross: el propósito de vida, derivado de cuatro posiciones clave
Por dentro, cada una de las 64 puertas corresponde a un rango de longitud eclíptica. La longitud de tus planetas al nacer se asigna a puertas concretas (y a líneas dentro de ellas). El cálculo “Design” corresponde al momento en que el Sol estaba 88° antes de su posición natal, unos 3 meses antes del nacimiento.
Dos cartas: Personality y Design
Sección titulada «Dos cartas: Personality y Design»Human Design usa dos momentos:
- Personality: la hora real de nacimiento. Es el lado “consciente”.
- Design: cuando el Sol estaba 88° antes de su posición natal. Es el lado “inconsciente”.
Cada activación de puerta pertenece a uno de los dos. La carta completa tiene 13 + 13 = 26 activaciones.
Esto es justo lo que hace el cálculo de HD más pesado que una carta astrológica estándar: en la práctica calculas dos cartas.
API con soporte de Human Design
Sección titulada «API con soporte de Human Design»La mayoría de las API de astrología no soportan HD o lo hacen de forma superficial (solo type + strategy). Una implementación completa de HD necesita:
- El mapeo de las 64 puertas (tabla de consulta)
- 6 líneas por puerta (384 celdas)
- 9 centros con lógica defined/open
- 36 canales (cada uno une dos centros)
- El cálculo de la Incarnation Cross
- La derivación del Profile a partir de la línea de la puerta del Sol + la línea de la puerta de la Tierra (Personality y Design)
Las API que hacen todo esto son muy escasas. AstroWay API tiene 12 endpoints de HD, la cobertura más profunda que hemos visto en una API comercial.
Los 12 endpoints de HD de AstroWay
Sección titulada «Los 12 endpoints de HD de AstroWay»| Endpoint | Créditos | Qué devuelve |
|---|---|---|
/v1/human-design | 50 | Carta HD completa |
/v1/human-design/transits | 50 | Tránsitos HD para una fecha dada |
/v1/human-design/compatibility | 100 | Compatibilidad de dos cartas HD |
/v1/hd/incarnation-cross | 50 | Incarnation Cross |
/v1/hd/dream-rave | 50 | Carta Dream Rave |
/v1/hd/hologenetic | 50 | Hologenetic Profile |
/v1/hd/sensitivity | 50 | Análisis de sensibilidad a la hora |
/v1/hd/circuitry | 20 | Análisis de circuitos |
/v1/hd/penta | 100 | Penta: dinámica de grupo de 3 a 5 personas |
/v1/hd/group-overlay | 100 | Group overlay |
/v1/hd/design-date | 10 | Cálculo de la fecha Design |
/v1/hd/rave-new-years | 10 | Fechas del Rave New Year |
Cómo añadir una función de HD
Sección titulada «Cómo añadir una función de HD»Imagina que añades HD a una app de astrología que ya existe. Empieza por el endpoint principal:
import { Astroway } from '@astroway/sdk';
const client = new Astroway({ apiKey: process.env.ASTROWAY_API_KEY! });
const hd = await client.humanDesign.compute({ date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.4501, longitude: 30.5234,});
console.log(`Type: ${hd.type}`); // e.g. "Generator"console.log(`Strategy: ${hd.strategy}`); // e.g. "To Respond"console.log(`Authority: ${hd.authority}`); // e.g. "Sacral"console.log(`Profile: ${hd.profile.profile}`); // e.g. "1/3"console.log(`Defined channels: ${hd.channels.length}`);Forma de la respuesta:
{ "type": "Generator", "strategy": "To Respond", "notSelfTheme": "Frustration", "authority": "Sacral", "profile": "1/3", "definition": "single", "cross": { "name": "Right Angle Cross of the Sphinx", "quarter": "Civilization", "gates": [1, 2, 7, 13] }, "centers": [ { "name": "Sacral", "defined": true }, ... ], "channels": [ { "gate1": 34, "gate2": 20, "name": "Channel of Charisma", "type": "Generated" } ], "personalityActivations": [...], "designActivations": [...]}Dinámica de grupo con Penta
Sección titulada «Dinámica de grupo con Penta»Penta es una técnica para entender la dinámica de equipos de 3 a 5 personas. Es poco común: la mayoría de las calculadoras de HD no la ofrecen. Pero es oro para HR-tech, plataformas de coaching y apps de team building.
const penta = await client.hd.penta({ inputs: [ { date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.45, longitude: 30.52 }, { date: '1988-03-10', time: '08:15:00', timezoneOffset: 2, latitude: 48.85, longitude: 2.35 }, { date: '1985-11-22', time: '18:00:00', timezoneOffset: -5, latitude: 40.71, longitude: -74.00 }, ],});
console.log(`Members: ${penta.memberCount}`);console.log(`Channels in the group: ${penta.channels.length}`);Sensitivity: clave para la precisión
Sección titulada «Sensitivity: clave para la precisión»Las cartas HD son sensibles a la hora de nacimiento. Un error de 10 minutos puede cambiar el Profile (por ejemplo, 1/3 → 1/4). Para usuarios que no conocen su hora exacta, ejecuta el análisis de sensibilidad:
const sensitivity = await client.hd.sensitivity({ date: '1990-07-14', time: '14:30:00', timezoneOffset: 3, latitude: 50.4501, longitude: 30.5234,});
// sensitivity tells you which fields change if time shifts ±5/15/30 minÚsalo para avisar al usuario: “Con esta precisión tu profile podría cambiar. Considera una rectificación”.
Precios para apps de HD
Sección titulada «Precios para apps de HD»Si construyes una app centrada en HD:
- Usuario básico: 1 carta HD al registrarse, cacheada para siempre = 50 créditos una sola vez
- Usuario activo: tránsitos periódicos + compatibility = ~200 créditos/mes
- 100 DAU con uso moderado de HD: ~110 000 créditos/mes → Starter ($19/mes) lo cubre de sobra
- 1 000 DAU: ~150 000 créditos/mes → Pro ($59/mes)
Las consultas de compatibility son las más pesadas (100 créditos). Cachea el resultado de cada pareja de usuarios para siempre (no cambia).
Visualización
Sección titulada «Visualización»El bodygraph se suele renderizar con SVG. La API devuelve los datos de centros y canales; tú dibujas la parte visual. Ejemplo:
function Bodygraph({ hd }: { hd: HDChart }) { return ( <svg viewBox="0 0 400 600"> {hd.centers.map(c => ( <polygon key={c.name} points={CENTER_COORDS[c.name]} fill={c.defined ? CENTER_COLORS[c.name] : 'white'} stroke="black" /> ))} {hd.channels.map(ch => ( <line key={`${ch.gate1}-${ch.gate2}`} x1={GATE_COORDS[ch.gate1].x} y1={GATE_COORDS[ch.gate1].y} x2={GATE_COORDS[ch.gate2].x} y2={GATE_COORDS[ch.gate2].y} stroke="#d4a84c" strokeWidth="3" /> ))} </svg> );}Las coordenadas son una plantilla fija (todo bodygraph tiene los mismos 9 centros y 64 puertas en las mismas posiciones).
Empieza a construir funciones de HD
Sección titulada «Empieza a construir funciones de HD»- Human Design API: página del producto con la lista completa de endpoints
- Ejemplo: Human Design: recorrido detallado por
/v1/human-design - Inicio rápido: consigue una API key gratuita (hasta 200 cartas HD/mes en Free)
Posiciones al segundo de arco en 4 líneas de código.
Clave gratuita sin tarjeta. 5 000 llamadas al mes antes del primer pago.