🕓 Articol din 2026-04-14, actualizat 2026-05-09. SDK-urile TS / Python / PHP sunt acum publicate în registrele publice -
@astroway/sdk(npm),astroway(PyPI),astroway/sdk(Packagist). Detalii în changelog.
Human Design a crescut dintr-un sistem ezoteric de nișă din anii 1990 într-un cadru de dezvoltare personală de masă. Aplicațiile cu milioane de utilizatori l-au normalizat, iar dezvoltatorii se întreabă: cum calculezi o hartă Human Design programatic?
În acest articol ne ocupăm de partea tehnică: ce înseamnă un calcul HD, ce API-uri îl suportă și cum integrezi o funcție HD în aplicația ta.
Ce este Human Design din punct de vedere tehnic
Section titled “Ce este Human Design din punct de vedere tehnic”Human Design se sprijină pe trei sisteme clasice:
- Astrologia occidentală: pozițiile planetelor în momentul nașterii
- I Ching: 64 de hexagrame, mapate pe 64 de “porți”
- Sistemul chakrelor: nouă “centri” (noduri energetice)
Calculul primește datele nașterii și produce un bodygraph - o hartă vizuală cu:
- Type (Manifestor, Generator, Manifesting Generator, Projector, Reflector) - semnătura energetică
- Strategy: cum iei decizii
- Authority: în ce centru să ai încredere când decizi (Sacral, Emotional, Splenic etc.)
- Profile: combinația de linii (1/3, 4/6 etc.)
- Channels: legăturile dintre centri care formează personalitatea
- Incarnation Cross: scopul vieții, derivat din patru poziții cheie
În spate, fiecare dintre cele 64 de porți corespunde unui interval de longitudine ecliptică. Longitudinea planetelor tale la naștere se mapează pe anumite porți (și pe liniile din interiorul lor). Calculul “Design” se face pentru momentul în care Soarele era cu 88° înainte de poziția de la naștere, adică aproximativ cu 3 luni mai devreme.
Două hărți: Personality și Design
Section titled “Două hărți: Personality și Design”Human Design folosește două momente ale nașterii:
- Personality: ora reală a nașterii. Aceasta este partea “conștientă”.
- Design: momentul în care Soarele era cu 88° înainte de poziția de la naștere. Aceasta este partea “inconștientă”.
Fiecare activare de poartă aparține uneia dintre ele. Harta completă are 13 + 13 = 26 de activări.
Tocmai asta face calculul HD mai greu decât o hartă astrologică obișnuită: practic calculezi două hărți.
API-uri care suportă Human Design
Section titled “API-uri care suportă Human Design”Majoritatea API-urilor de astrologie fie nu suportă deloc HD, fie îl suportă superficial (doar type + strategy). O implementare HD completă are nevoie de:
- Maparea celor 64 de porți (tabel de căutare)
- 6 linii pentru fiecare poartă (384 de celule)
- 9 centri cu logica defined/open
- 36 de canale (fiecare leagă doi centri)
- Calculul Incarnation Cross
- Derivarea Profile din linia porții Soarelui + linia porții Pământului (Personality și Design)
API-urile care fac toate acestea sunt foarte rare. AstroWay API are 12 endpoint-uri HD - cea mai profundă acoperire pe care am văzut-o la un API comercial.
Cele 12 endpoint-uri HD AstroWay
Section titled “Cele 12 endpoint-uri HD AstroWay”| Endpoint | Credite | Ce returnează |
|---|---|---|
/v1/human-design | 50 | Harta HD completă |
/v1/human-design/transits | 50 | Tranzite HD pentru o dată dată |
/v1/human-design/compatibility | 100 | Compatibilitatea a două hărți HD |
/v1/hd/incarnation-cross | 50 | Incarnation Cross |
/v1/hd/dream-rave | 50 | Harta Dream Rave |
/v1/hd/hologenetic | 50 | Hologenetic Profile |
/v1/hd/sensitivity | 50 | Analiza sensibilității la oră |
/v1/hd/circuitry | 20 | Analiza circuitelor |
/v1/hd/penta | 100 | Penta - dinamica unui grup de 3–5 persoane |
/v1/hd/group-overlay | 100 | Group overlay |
/v1/hd/design-date | 10 | Calculul datei Design |
/v1/hd/rave-new-years | 10 | Datele Rave New Year |
Cum adaugi o funcție HD
Section titled “Cum adaugi o funcție HD”Să zicem că adaugi HD într-o aplicație de astrologie existentă. Începe cu endpoint-ul 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 răspunsului:
{ "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": [...]}Dinamica de grup cu Penta
Section titled “Dinamica de grup cu Penta”Penta este o tehnică pentru înțelegerea dinamicii echipei în grupuri de 3–5 persoane. E o raritate - majoritatea calculatoarelor HD nu o oferă. Dar pentru HR-tech, platforme de coaching și aplicații de team building e aur curat.
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: esențial pentru precizie
Section titled “Sensitivity: esențial pentru precizie”Hărțile HD sunt sensibile la ora nașterii. O eroare de 10 minute poate schimba Profile (de exemplu, 1/3 → 1/4). Pentru utilizatorii care nu își știu ora exactă, rulează analiza de sensitivity:
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 minFolosește-o ca să-l avertizezi pe utilizator: “La această precizie, profile-ul tău s-ar putea schimba. Ia în considerare o rectificare”.
Costuri pentru aplicații HD
Section titled “Costuri pentru aplicații HD”Dacă construiești o aplicație axată pe HD:
- Utilizator de bază: o hartă HD la înregistrare, păstrată în cache pentru totdeauna = 50 de credite o singură dată
- Utilizator activ: tranzite periodice + compatibility = ~200 de credite/lună
- 100 DAU cu utilizare moderată a HD: ~110 000 de credite/lună → Starter ($19/lună) acoperă ușor
- 1 000 DAU: ~150 000 de credite/lună → Pro ($59/lună)
Cererile de compatibility sunt cele mai scumpe (100 de credite). Păstrează în cache rezultatul pentru fiecare pereche de utilizatori pentru totdeauna (nu se schimbă).
Vizualizare
Section titled “Vizualizare”Bodygraph-ul se randează de obicei în SVG. API-ul returnează datele despre centri și canale, iar tu randezi partea vizuală. Exemplu:
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> );}Coordonatele sunt un șablon fix (fiecare bodygraph are aceiași 9 centri și aceleași 64 de porți în aceleași poziții).
Începe să construiești funcții HD
Section titled “Începe să construiești funcții HD”- Human Design API: pagina de produs cu lista completă de endpoint-uri
- Exemplu: Human Design: walkthrough detaliat pentru
/v1/human-design - Pornire rapidă: obține o cheie API gratuită (până la 200 de hărți HD/lună pe Free)
Poziții la secundă de arc în 4 linii de cod.
Cheie gratuită fără card. 5.000 de apeluri pe lună până la prima plată.