Zum Hauptinhalt springen
Echtzeit-Radar & Feeds
Alle RSS Feeds ➔
👥 Community & Social
Windows Tipps & SecurityGrafikkarte vor Überhitzung schützen: So geht’s(25.09.2026 um 08:00 Uhr)
••••••••••
Windows Tipps & SecurityGrafikkarte vor Überhitzung schützen: So geht’s(25.09.2026 um 08:00 Uhr)
••••••••••
Intelligence View
⚡ tsecurity.de Intelligence

Stop shipping a 1990s C library to compute planets. Xalen is the pure-Rust, Apache-2.0 replacement for Swiss Ephemeris.

Stop shipping a 1990s C library to compute planets. Xalen is the pure-Rust, Apache-2.0 replacement for Swiss Ephemeris. If your app does astrology, you already know the dependency. Swiss Ephemeris: a C library from the 1990s, a folder of…

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!




Stop shipping a 1990s C library to compute planets. Xalen is the pure-Rust, Apache-2.0 replacement for Swiss Ephemeris.



If your app does astrology, you already know the dependency. Swiss Ephemeris: a C library from the 1990s, a folder of binary .se1 data files you have to ship and locate at runtime, and a license that is either AGPL or you pay for a commercial seat. For 20 years it was the only serious option, so everyone just swallowed the cost.



That era is over. Xalen Ephemeris is a full planetary engine written in pure Rust, with no unsafe in the core engine (the only unsafe lives in the optional FFI, Node and WASM binding crates), released under Apache-2.0. No C toolchain. No data files to ship. No copyleft clause waiting for the day you try to make money. It is built to replace Swiss Ephemeris in production, not to admire it from a distance.



Python is live on PyPI and the Rust crates are live on crates.io:




# Python
pip install xalen

# Rust
cargo add xalen-ephem xalen-time xalen-ayanamsa xalen-vedic






Node and WASM build straight from the repo. Repo: https://github.com/vedika-io/xalen-ephemeris






Switching takes one line



Xalen ships a pyswisseph-shaped API on purpose. Migrating an existing codebase is a find-and-replace:




# before
import swisseph as swe
# after
import xalen.swe as swe

jd = swe.julday(1990, 6, 15, 10.5)
xx, ok = swe.calc_ut(jd, swe.SUN, swe.FLG_SWIEPH | swe.FLG_SPEED)
# same argument order, same SE_/SEFLG_/SIDM_ constants, same tuple layout






Your function calls do not change. Your data-file directory disappears. Your license problem disappears.






Xalen vs Swiss Ephemeris



Line them up and the gap is hard to miss. Swiss Ephemeris is C from the 1990s, shipped as a native library you compile and link, fed by .se1 data files you have to bundle and locate at runtime, under AGPL or a paid commercial license. Xalen is pure Rust with no unsafe in the core engine, thread-safe, with no native dependency and no data files for the analytical engine (the DE440 kernel is optional), under permissive Apache-2.0. Swiss reaches other languages through third-party wrappers; Xalen targets Rust, Python, C and C++, Node and WASM from one core. On accuracy both track JPL DE, and Xalen matches DE440 to sub-arcsecond on the inner planets with the kernel available for full precision. Swiss gives you positions, houses and ayanamsa and stops there; Xalen ships the entire astrology layer on top, renders charts to SVG, geocodes 130+ cities and localizes into 19 languages. And switching is one line: import xalen.swe as swe.






The part nobody else ships



This is where the comparison stops being close. A raw ephemeris, JPL's or Swiss's, hands you coordinates. Then you spend the next two years building the astrology yourself. Xalen ships that layer, for the whole world, in the box:



India / Vedic (Jyotish). Vimshottari and other dashas, 16 divisional charts (vargas), full panchang with tithi, nakshatra, yoga and karana transition times, shadbala, KP, Jaimini, Tajaka annual charts, yogas, doshas, and compatibility. Plus Lal Kitab remedial astrology.



Western. Aspects, essential and accidental dignities, 97 Arabic Lots, Hellenistic and Uranian techniques, Cosmobiology, secondary progressions, exact solar and lunar returns by iterative refinement, declination aspects and antiscia, harmonics, and horary.



China. BaZi Four Pillars, Zi Wei Dou Shu, Feng Shui Flying Stars, and Qi Men Dun Jia (experimental).



The rest of the world. Korean Saju, Japanese Nine Star Ki, Burmese Mahabote, Mayan and Aztec calendars, Tibetan, Persian/Zoroastrian, Egyptian, and Celtic systems. I Ching with all 64 hexagrams and the full 384 line texts. Pythagorean and Chaldean numerology (Life Path, Expression, Soul Urge).



And the astronomy a serious engine needs. 50 ayanamsa systems and 23 house systems. A rigorous solar and lunar eclipse engine with Besselian elements and per-observer local circumstances, validated against NASA for 2017 and 2024. 506 built-in fixed stars plus 8,870 compiled-in Hipparcos stars and the full 118,218-star catalog loadable at runtime. Black Moon Lilith (mean and true), Chiron, nodes, and 15 asteroids and TNOs. Velocity and retrograde flags, topocentric positions, and RA/Dec, heliocentric and rectangular output. Real time systems: UT1/TT/TDB, the full leap-second table, and a Stephenson-Morrison-Hohenkerk delta-T spline. SVG chart rendering (North Indian, South Indian, Western wheel) with zero dependencies, 130+ city geocoding, and names in 19 languages.



Swiss Ephemeris gives you the math and stops. JPL gives you the coordinates and stops. Xalen gives you all of it, from one Apache-2.0 engine, with Rust, Python, Node, WASM and C bindings. A few of these are flagged experimental in the docs, and they are labelled honestly rather than hidden.






The accuracy is not a vibe, it is a number



Most libraries ask you to trust them. Xalen hands you the receipts, in two layers. The first is a reproducible 5,000,000-chart consistency sweep: random (date, lat, lon) charts spanning the years 1500 to 2400, every one diffed against a Swiss Ephemeris (pyswisseph) oracle for every body, the house cusps, and four ayanamsas. The harness is in the repo and it is deterministic, so you can reproduce the entire run yourself:




python3 validation/oracle_pyswisseph.py --n 5000000 --seed 42 \
| cargo run -p xalen-validation --release -- -






One honest note on that sweep: the oracle is pyswisseph, and without Swiss or JPL data files (.se1 / .bsp) it falls back to the analytic Moshier theory, so by default it measures analytic-against-analytic agreement. The harness prints exactly which backend it used; point it at the data files for a true Swiss-backed comparison.



The headline accuracy comes from the second layer: a committed cross-validation against JPL Horizons vectors, run with cargo test. Against DE440, the Sun lands at 0.21 arcsec and Mercury through Saturn stay under 0.76 arcsec. Uranus and Neptune sit at 1.8 to 2.5 arcsec. The analytical Moon holds an RMS near 2.8 arcsec, and loading the optional DE440 kernel takes the Sun, planets and Moon sub-arcsecond with full-range Pluto. Every figure is per-body and reproducible. The full breakdown is in docs/ACCURACY.md.



This is the point worth sitting with: a pure-Rust engine with zero data files matches the gold-standard NASA DE440 ephemeris to a fraction of an arcsecond on the inner planets, and backs it with a reproducible five-million-chart consistency sweep on top. You do not have to choose between "clean dependency" and "correct."






A clean-room engine, not a wrapper



Xalen is an independent, clean-room implementation, not affiliated with Astrodienst. It is built directly from the published theories the whole field relies on: VSOP87, ELP-2000/82, IAU 2006 precession with 2000B nutation, and the Stephenson, Morrison and Hohenkerk delta-T model, with JPL DE440 as an optional high-precision kernel. It is cross-checked against Swiss Ephemeris because that is the honest way to prove a replacement, not because a single line of it is borrowed.






Where it stands today



This is a launch, and the engine is ready for real work.



If you have ever fought the Swiss Ephemeris C build, hunted for a missing .se1 file in production, or had a licensing conversation you did not enjoy, Xalen is the exit. Star it, fork it, and put it head to head with whatever you trust:



https://github.com/vedika-io/xalen-ephemeris



Try to break it. Open an issue with a chart Xalen gets wrong against your reference. Out of five million, the next interesting failure is the one you find.



Xalen is a computation engine. Any astrological interpretation built on top of it is for informational and cultural purposes, not professional advice.

1. Sofort-Triage & Abwehrmaßnahmen

SOC Incident Playbook: Vulnerability Remediation & Verification
Syntax validiert (0 Fehler)
title: Detect Exploitation - Stop shipping a 1990s C library to compute planets. Xalen is the pure-Rust, Apache-2.0 replacement for Swiss Ephemeris.
id: 68e11e4b-3f42-4dc1-98d5-20ea024d9372
status: experimental
description: Automatisch generierte SIEM-Erkennungsregel basierend auf CTI Intelligence
references:
  - https://tsecurity.de/
author: iShareStuff CTI Automated Detection Engine
date: 2026-09-25
logsource:
  category: network_connection
  product: any
detection:
  selection:
      CommandLine|contains:
        - 'exploit'
  condition: selection
falsepositives:
  - Legitime administrative Zugriffe oder Penetrationstests
level: high
tags:
  - attack.initial_access
Syntax validiert (0 Fehler)
rule CTI_Threat_Indicator {
    meta:
        author = "iShareStuff CTI Automated Detection Engine"
        date = "2026-09-25"
        description = "YARA Signature for "
    strings:
        $str = "Stop shipping a 1990s C librar" ascii wide
    condition:
        any of them
}
Syntax validiert (0 Fehler)
index=security sourcetype IN ("cisco:asa", "pan:traffic", "zeek_conn", "suricata", "WinEventLog:Security")
("Stop shipping a 1990s C library to compu")
| stats count earliest(_time) as first_seen latest(_time) as last_seen by src_ip, dest_ip, dest_host, signature
| eval first_seen=strftime(first_seen, "%Y-%m-%d %H:%M:%S"), last_seen=strftime(last_seen, "%Y-%m-%d %H:%M:%S")
| sort - count
Syntax validiert (0 Fehler)
message: "*Stop shipping a 1990s C library to compu*"
Syntax validiert (0 Fehler)
CommonSecurityLog
| where Message has "Stop shipping a 1990s C library to compu"
| summarize EventCount = count(), FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated) by SourceIP, DestinationIP, DestinationPort, Activity
| extend DetectionRule = "iShareStuff-CTI-Compiled"
| sort by EventCount desc

2. Cyber Threat Intelligence & Forensik

CTI Threat Relationship Graph4 Knoten / 3 Relationen
CVE / Incident Software MITRE ATT&CK CWE Weakness IoC
🎯
MITRE ATT&CK Matrix Navigator 14 Taktiken
Reconnaissance
-
Resource Development
-
Initial Access
Execution
Persistence
-
Privilege Escalation
Defense Evasion
Credential Access
-
Discovery
-
Lateral Movement
-
Collection
-
Command and Control
Exfiltration
-
Impact
tsecurity.de Cognitive Threat RAG
Fokus-Vektor:

Kognitive Analyse für identifizierte Bedrohung: Erhöhte Bedrohungslage im Bereich Stop shipping a 1990s C library to compu.... Basierend auf 368k Vektor-Korrelationen werden sofortige Isolationsmaßnahmen für betroffene Endpunkte empfohlen.

🛡️ Angriffsfläche & Exposure

Netzwerk/Remote-Zugriff ohne Vorauthentifizierung möglich.

⚡ Empfohlene Sofortmaßnahmen
  • 1. Perimeter-Inspektion: Relevante Portfreigaben und exponierte Endpunkte unverzüglich scannen.
  • 2. Patch-Applikation: Hersteller-Hotfix einspielen oder betroffene Daemons in isolierte DMZ-Segmente überführen.
  • 3. Telemetrie & EDR-Alerts: Prozessaufrufe und Child-Processes auf anomale Shell-Spawns überwachen.
🔗 Semantisch verwandte Zero-Days MariaDB 11.7 VEC
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Stop shipping a 1990s C library to compute planets. Xalen is the pure-Rust, Apache-2.0 replacement for Swiss Ephemeris.

Thematisch verwandte Begriffe: Stop, shipping, 1990s, library · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-97898 | Insecure Direct Object Reference / missing object-level authorization in…
Advisory →
tsecurity.de Icon
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag