AstroWay/api v2.325.2 · de
alle Systeme in Ordnung

Eclipse path, cosmogram und Vedic-Karten: pure-SVG Visualisierer ohne headless-Chrome

Sechs endpoint der Familie /v1/render/* für spezifische Visualisierungen – drei Vedic-Karten (North/South/East Indian), Hamburg-School 90° cosmogram, equirectangular eclipse-path und stereographic star-map. Alle Renderings – reiner SVG-String, ohne Browser-Worker.

Die Kategorie Visualization auf unserer Roadmap ist 14/14 abgeschlossen: Sechs finale Endpunkte decken spezifische Layouts ab, für die es kein fertiges npm-Paket gibt – vedische Horoskope in drei regionalen Stilen, Hamburg-School-Kosmogramm, Finsternispfad auf einer Weltkarte und eine stereografische Sternenkarte.

Die Kernentscheidung: Alle Renderings sind reine SVG-Strings, ohne headless Chrome. Das bedeutet Subsekunden-Antwortzeiten, niedrige Kosten pro Aufruf und die Möglichkeit zur Inline-Einbettung in jedes E-Mail-/PDF-/Web-Dokument.

Die meisten Astrologie-Bilder in Publikationsqualität werden über Chromium mit einer SVG-Vorlage erstellt – das ist für PDF-Berichte in Ordnung. Aber die /v1/render/*-Endpunkte sind auf programmatisches Rendering in Echtzeit ausgerichtet:

  • Inline in einer React-Dashboard-Komponente
  • Einbettung in eine E-Mail-Kampagne
  • Übergabe an einen LLM-Agenten für multimodale Analyse

Headless Chrome ist nicht geeignet – RAM-Kosten und Latenz erlauben es nicht, ihn 100 Mal pro Minute für eine einzelne Charge aufzurufen. Daher sind alle sechs Renderer reine String-Builder, die SVG-Markup über Template-Funktionen ausgeben. Die Latenz liegt selbst bei kaltem Cache unter 100 ms.

In der indischen Astrologie-Tradition gibt es drei Layouts für Geburtshoroskope, und jedes hat ein kulturelles Gewicht in seiner Region:

1. Nordindisch (Diamant) - /v1/render/wheel-vedic-north

Abschnitt betitelt „1. Nordindisch (Diamant) - /v1/render/wheel-vedic-north“

Das klassische “Diamant”-Layout: Das 1. Haus ist immer oben (feste Häuser), die Zeichen rotieren abhängig vom Lagna. Verbreitet in den meisten Hindi-Mainstream-Konsultationen.

Terminal-Fenster
curl -X POST https://api.astroway.info/v1/render/wheel-vedic-north \
-H "X-Api-Key: aw_live_..." \
-H "Content-Type: application/json" \
-d '{
"date": "1990-05-15",
"time": "14:30:00",
"timezoneOffset": 3,
"latitude": 50.45,
"longitude": 30.52,
"options": { "format": "svg" }
}'

Du kannst einen SVG-String (format: "svg") oder einen JSON-Wrapper mit { svg, byteLength } (format: "json", Standard) anfordern.

2. Südindisch (4×4-Raster) - /v1/render/wheel-vedic-south

Abschnitt betitelt „2. Südindisch (4×4-Raster) - /v1/render/wheel-vedic-south“

Ein quadratisches 4×4-Raster, die Zeichen sind fest (Fische immer oben links, die anderen im Uhrzeigersinn), die Hausnummern bewegen sich mit dem Lagna. Verbreitet in Tamil Nadu, Kerala, Karnataka.

3. Ostindisch (Bengalisch) - /v1/render/wheel-vedic-east

Abschnitt betitelt „3. Ostindisch (Bengalisch) - /v1/render/wheel-vedic-east“

Ein Quadrat mit Diagonalen + ein inneres gedrehtes Quadrat – eine hybride Geometrie. Die am wenigsten bekannte der drei im Westen, aber obligatorisch für Produkte mit bengalischer Ausrichtung.

Alle drei akzeptieren dieselbe Chart-Payload – der Endpunkt wird nach dem Visualisierungsstil ausgewählt.

POST /v1/render/cosmogram – dies ist kein Geburtshoroskop. Es ist ein 90°-Zifferblatt, bei dem alle harten Aspekte (0°/90°/180°) zu einer Konjunktion kollabieren. Das Instrument wurde von Alfred Witte (Witte 1928) entwickelt und später von Reinhold Ebertin (Ebertin 1940) als Grundlage der Kosmobiologie formalisiert.

Warum das nützlich ist: Auf einem Standard-360°-Horoskop sind harte Aspekte über den Kreis “verschmiert”, was das Ablesen von Clustern erschwert. Auf einem 90°-Zifferblatt werden sie visuell offensichtlich – ein Cluster von 3-4 Planeten in einem einzigen 22,5°-Sektor ist sofort sichtbar.

Terminal-Fenster
curl -X POST https://api.astroway.info/v1/render/cosmogram \
-H "X-Api-Key: aw_live_..." \
-H "Content-Type: application/json" \
-d '{
"date": "1990-05-15",
"time": "14:30:00",
"timezoneOffset": 3,
"latitude": 50.45,
"longitude": 30.52
}'

Gibt ein SVG mit einem 4×22,5°-Quadrat (kardinale Sektoren) + den Planetenpositionen auf einer 90°-Rotation zurück.

POST /v1/render/eclipse-path akzeptiert einen vom Aufrufer bereitgestellten Längen-/Breitengrad-Track für die Zentrallinie der Finsternis und optional eine Bandbreite in Grad. Das Rendering ist eine äquidistante Weltkarte (Standard-WGS-84-Projektion) mit Gradnetz + Pfadlinie + Band-Overlay.

Terminal-Fenster
curl -X POST https://api.astroway.info/v1/render/eclipse-path \
-H "X-Api-Key: aw_live_..." \
-H "Content-Type: application/json" \
-d '{
"path": [
{ "latitude": 38.5, "longitude": -125.0, "time": "2026-08-12T17:30Z" },
{ "latitude": 41.2, "longitude": -105.3, "time": "2026-08-12T17:42Z" },
{ "latitude": 44.8, "longitude": -85.7, "time": "2026-08-12T17:54Z" }
],
"bandWidthDeg": 1.2,
"title": "Eclipse 2026-08-12",
"options": { "width": 1200, "height": 600, "showGraticule": true, "pathColor": "#ff5500" }
}'

Der vom Aufrufer bereitgestellte Pfad ist eine bewusste Designentscheidung. Finsternispfad-Daten stammen aus verschiedenen kanonischen Quellen (NASA Eclipse Catalog, Five Millennium Canon of Solar Eclipses von Espenak & Meeus), jede mit ihrer eigenen Genauigkeit. Der Endpunkt versucht nicht, die NASA-Berechnung zu replizieren – er rendert deinen Track schön. Als Datenquelle empfehlen wir die NASA Eclipse Web Site, aber das liegt außerhalb des Umfangs dieses Endpunkts.

Anwendungsfall. Eine Bildungs-App, die die nächste Finsternis mit ihrem Verlauf auf einer Karte zeigt. Oder eine Astrologie-Beratung, die die “Welle” einer Finsternis über wichtige Orte für den Geborenen visualisieren möchte.

POST /v1/render/star-map akzeptiert eine Liste von Punkten (RA/Dec) mit optionaler Magnitude und Glyphe und rendert eine stereografische Projektion. Die Magnitude wird auf den Radius des Punktes abgebildet (hellerer Stern = größerer Kreis).

Terminal-Fenster
curl -X POST https://api.astroway.info/v1/render/star-map \
-H "X-Api-Key: aw_live_..." \
-H "Content-Type: application/json" \
-d '{
"points": [
{ "raHours": 5.92, "decDeg": 7.41, "magnitude": 0.45, "name": "Betelgeuse" },
{ "raHours": 6.75, "decDeg": -16.72, "magnitude": -1.46, "name": "Sirius" },
{ "raHours": 5.24, "decDeg": -8.20, "magnitude": 0.18, "name": "Rigel" }
],
"observerLatDeg": 50.45,
"zenithDecDeg": 50.45,
"capAltitudeDeg": -18,
"title": "Sky at midnight, Kyiv"
}'

Parameter:

  • points: 1 bis 2000 Sterne/Objekte
  • observerLatDeg + zenithDecDeg: für die korrekte Projektion vom Beobachtungspunkt
  • capAltitudeDeg: Höhenbegrenzung (z. B. -18 für astronomische Dämmerung)

Anwendungsfall. Ein “Himmel heute Nacht”-Widget in einer Astrologie-App. Vedischer Geburtshoroskop-Kontext mit Nakshatra-Sternen, die auf reale Koordinaten gelegt werden. Ein Bildungsprodukt mit einer Sternbildkarte.

Wenn ein Rasterbild benötigt wird (für soziale Medien, E-Mail, Push), ist der Pipeline:

import { Astroway } from "@astroway/sdk";
import sharp from "sharp";
const client = new Astroway({ apiKey: process.env.ASTROWAY_KEY });
const { svg } = await client.render.eclipsePath({
path: eclipseTrack,
bandWidthDeg: 1.2,
options: { width: 1200, height: 600, format: "json" },
});
const png = await sharp(Buffer.from(svg))
.resize(1200, 600)
.png()
.toBuffer();
// upload to CDN, get URL

Die SVG-zu-PNG-Konvertierung über sharp fügt ~150 ms hinzu, was immer noch günstiger ist als headless Chrome. Alternativ kannst du es als SVG belassen und inline in HTML über Template-Systeme (Astro, Vue, React-Komponente mit direkter String-Ausgabe über den entsprechenden Framework-Mechanismus mit Vor-Sanitisierung) einfügen.

Alle sechs Rendering-Endpunkte dieser Charge sind Tier 1: 10 Kredite pro Aufruf. Die vollständige Preistabelle findest du unter Preise.

Die Dokumentation mit vollständigen Parameterschemata findest du unter /docs/api/ → Render. Vedische Formate, Kosmogramm, Finsternispfad und Sternenkarte – jeweils mit Beispielparametern und einem Response-SVG-Schnappschuss.

MakSeong · AstroWay

Ich entwickle das AstroWay API: packe Astrologie-Mathematik auf die Bogensekunde in reines REST und schreibe über langweilige Details, die eigentlich wichtig sind.

// darauf aufbauen

Positionen auf die Bogensekunde in 4 Zeilen Code.

Kostenloser Schlüssel ohne Kreditkarte. 5.000 Aufrufe pro Monat vor der ersten Zahlung.

Mehr aus dem Blog alle Beiträge →

Ephemeris 2026-07-19

Wie wir die Genauigkeit unter Kontrolle halten: CI gegen swetest und NASA

In einer Astrologie-API verschlechtert sich die Genauigkeit leicht durch ein einziges Refactoring der Ephemeriden. Wir zeigen unseren Schutz: ein Swiss-Ephemeris-Kern für App und API, Hunderte eingefrorene Snapshots auf Referenzhoroskopen und die Triangulation jedes PR gegen swetest CGI, Kerykeion, Prokerala und den Finsterniskatalog der NASA.

Engineering 2026-07-15

Drei offizielle SDKs: TypeScript, Python, PHP statt rohem curl

Rohes HTTP funktioniert, aber ein typisierter Client spart Stunden: Autovervollständigung der Pfade, Request- und Response-Typen, eingebauter Retry bei 408/409/429/5xx und eine Fehlerhierarchie im Stainless-Stil. Wir gehen die drei offiziellen SDKs durch, @astroway/sdk (npm), astroway (PyPI), astroway/sdk (Packagist), und zeigen, wie sie aus einem einzigen OpenAPI-Vertrag generiert werden.

Industry 2026-06-05

Free Astrology API: Which One Has the Best Free Tier in 2026?

A side-by-side of free tiers across the major astrology APIs - credits, request caps, card requirements - and how much you can actually build for free.