🕓 Wpis z 2026-04-14, zaktualizowany 2026-05-09. SDK dla TS / Python / PHP są teraz w publicznych rejestrach -
@astroway/sdk(npm),astroway(PyPI),astroway/sdk(Packagist). Szczegóły w changelogu.
Human Design wyrósł z niszowego systemu ezoterycznego lat 90. na popularną ramę rozwoju osobistego. Aplikacje z milionami użytkowników sprawiły, że stał się czymś zwyczajnym, a deweloperzy pytają: jak obliczyć mapę Human Design programowo?
W tym wpisie strona techniczna: czym są obliczenia HD, które API je obsługują i jak wbudować funkcję HD w twoją aplikację.
Czym jest Human Design od strony technicznej
Dział zatytułowany „Czym jest Human Design od strony technicznej”Human Design opiera się na trzech klasycznych systemach:
- Astrologia zachodnia: pozycje planet w chwili urodzenia
- I Ching: 64 heksagramy przypisane do 64 “bram”
- System czakr: dziewięć “centrów” (węzłów energetycznych)
Obliczenie przyjmuje dane urodzenia i zwraca bodygraph - wizualną mapę z:
- Type (Manifestor, Generator, Manifesting Generator, Projector, Reflector) - sygnatura energetyczna
- Strategy: jak podejmować decyzje
- Authority: któremu centrum ufać przy decyzjach (Sacral, Emotional, Splenic itd.)
- Profile: kombinacja linii (1/3, 4/6 itd.)
- Channels: połączenia między centrami, które kształtują osobowość
- Incarnation Cross: cel życia wyprowadzony z czterech kluczowych pozycji
Pod maską każda z 64 bram odpowiada zakresowi długości ekliptycznej. Długość twoich planet w chwili urodzenia mapuje się na konkretne bramy (i linie wewnątrz nich). Obliczenie “Design” dotyczy momentu, gdy Słońce było 88° przed pozycją urodzeniową - mniej więcej 3 miesiące wcześniej.
Dwie mapy: Personality i Design
Dział zatytułowany „Dwie mapy: Personality i Design”Human Design używa dwóch punktów w czasie:
- Personality: faktyczny moment urodzenia. To strona “świadoma”.
- Design: moment, gdy Słońce było 88° przed pozycją urodzeniową. To strona “nieświadoma”.
Każda aktywacja bramy należy do jednej z nich. Pełna mapa ma 13 + 13 = 26 aktywacji.
Właśnie dlatego obliczenie HD jest cięższe niż standardowy horoskop - w praktyce liczysz dwie mapy.
API z obsługą Human Design
Dział zatytułowany „API z obsługą Human Design”Większość astrologicznych API albo w ogóle nie obsługuje HD, albo robi to powierzchownie (tylko type + strategy). Pełna implementacja HD wymaga:
- Mapowania 64 bram (lookup table)
- 6 linii na każdą bramę (384 komórki)
- 9 centrów z logiką defined/open
- 36 kanałów (każdy łączy dwa centra)
- Obliczenia Incarnation Cross
- Wyprowadzenia Profile z linii bramy Słońca + linii bramy Ziemi (Personality i Design)
API, które potrafią to wszystko, to wielka rzadkość. AstroWay API ma 12 endpointów HD - najgłębsze pokrycie, jakie widzieliśmy w komercyjnym API.
12 endpointów HD w AstroWay
Dział zatytułowany „12 endpointów HD w AstroWay”| Endpoint | Kredyty | Co zwraca |
|---|---|---|
/v1/human-design | 50 | Pełna mapa HD |
/v1/human-design/transits | 50 | Tranzyty HD na zadaną datę |
/v1/human-design/compatibility | 100 | Zgodność dwóch map HD |
/v1/hd/incarnation-cross | 50 | Incarnation Cross |
/v1/hd/dream-rave | 50 | Mapa Dream Rave |
/v1/hd/hologenetic | 50 | Hologenetic Profile |
/v1/hd/sensitivity | 50 | Analiza wrażliwości na czas |
/v1/hd/circuitry | 20 | Analiza obwodów |
/v1/hd/penta | 100 | Penta - dynamika grupy 3–5 osób |
/v1/hd/group-overlay | 100 | Group overlay |
/v1/hd/design-date | 10 | Obliczenie daty Design |
/v1/hd/rave-new-years | 10 | Daty Rave New Year |
Jak dodać funkcję HD
Dział zatytułowany „Jak dodać funkcję HD”Wyobraź sobie, że dodajesz HD do istniejącej aplikacji astrologicznej. Zacznij od głównego endpointu:
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}`);Kształt odpowiedzi:
{ "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": [...]}Dynamika grupy przez Penta
Dział zatytułowany „Dynamika grupy przez Penta”Penta to technika rozumienia dynamiki zespołu w grupach 3–5 osób. To rzadkość - większość kalkulatorów HD jej nie oferuje. Ale dla HR-tech, platform coachingowych i aplikacji do team buildingu to złoto.
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: kluczowe dla dokładności
Dział zatytułowany „Sensitivity: kluczowe dla dokładności”Mapy HD są wrażliwe na godzinę urodzenia. Błąd o 10 minut może zmienić Profile (np. 1/3 → 1/4). Dla użytkowników, którzy nie znają dokładnej godziny, uruchom analizę 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 minUżyj tego, aby ostrzec użytkownika: “Przy tej dokładności twój profile może się przesunąć. Rozważ rektyfikację”.
Plany dla aplikacji HD
Dział zatytułowany „Plany dla aplikacji HD”Jeśli budujesz aplikację skupioną na HD:
- Podstawowy użytkownik: 1 mapa HD przy rejestracji, zapisana w cache na zawsze = 50 kredytów jednorazowo
- Aktywny użytkownik: okresowe tranzyty + compatibility = ~200 kredytów/mies.
- 100 DAU z umiarkowanym użyciem HD: ~110 000 kredytów/mies. → Starter ($19/mies.) pokrywa to bez trudu
- 1 000 DAU: ~150 000 kredytów/mies. → Pro ($59/mies.)
Zapytania compatibility są najcięższe (100 kredytów). Zapisuj wyniki dla każdej pary użytkowników w cache na zawsze (się nie zmieniają).
Wizualizacja
Dział zatytułowany „Wizualizacja”Bodygraph tradycyjnie renderuje się w SVG. API zwraca dane o centrach i kanałach, a ty renderujesz wizualizację. Przykład:
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> );}Współrzędne to stały szablon (każdy bodygraph ma te same 9 centrów i 64 bramy w tych samych miejscach).
Zacznij budować funkcje HD
Dział zatytułowany „Zacznij budować funkcje HD”- Human Design API: strona produktu z pełną listą endpointów
- Przykład: Human Design: szczegółowy walkthrough
/v1/human-design - Szybki start: zdobądź darmowy klucz API (do 200 map HD/mies. na planie Free)
Pozycje do sekundy łuku w 4 liniach kodu.
Darmowy klucz bez karty. 5 000 wywołań miesięcznie do pierwszej płatności.