Community fork of Pyswisseph, a Python extension to the Swiss Ephemeris
Project description
pysweph
Modern Python bindings for the Swiss Ephemeris, a high-precision astronomical computation library for astrology developed and maintained since 1997.
pysweph continues the work of pyswisseph with updated documentation, bug fixes, and ongoing community maintenance.
Background
In mid-2025, the documentation for pywisseph (https://astrorigin.com/pyswisseph) became inaccessible, and the maintainer has been unresponsive to issues and pull requests. This fork, pysweph, aims to keep the Python interface stable, documented, and installable for users who rely on it.
Versioning
This project follows the versioning scheme: <swe_major>.<swe_minor>.<swe_patch>.<wrapper_increment>
- The first three numbers match the Swiss Ephemeris C library version, v2.10.03 (2022-09-09).
- The fourth number increments for Python wrapper changes.
pysweph starts from pyswisseph==2.10.3.2 (2023-06-04). The first release of this fork is 2.10.3.3. If the original maintainer of pyswisseph returns, this project will coordinate or merge changes as appropriate.
Upstream
pysweph links directly to the official Swiss Ephemeris C library maintained by Alois Treindl and Astrodienst.
pyswisseph included the author's auxiliary repositories ([swephelp](https://github.com/astrorigin/swephelp), [sqlite3](https://github.com/astrorigin/sqlite3), and related utilities). These have been intentionally removed in pysweph to reduce complexity and depend only on the canonical Swiss Ephemeris source code.
Changes in pysweph
- Documentation:
- Rebuilt with Sphinx and MyST Markdown, hosted on GitHub Pages with continuous integration via GitHub Actions.
- Generated API reference directly from
pyswisseph.cdocstrings withsphinx-autodoc. - Includes original tutorials and conceptual guides intended for both astrologers and developers.
- C library parity:
Status
- As of 2026-02-06, the test suite is deprecated due to
calcandhousesfunction patches. - A CFFI refactor is in progress: cffi-rewrite.
Installation
pysweph is available directly from PyPI.
uv pip install pysweph
# or
pip install pysweph
pysweph is a drop-in replacement for pyswisseph with the same import name:
import swisseph as swe
The documentation includes a detailed pyswisseph to pysweph Migration Guide for existing projects.
Credits
- Alois Treindl, creator of the Swiss Ephemeris
- Stanislas Marquis, author of the original Python bindings (
pyswisseph) - sailorfe, maintainer of
pyswephcontinuation
License
pysweph is licensed under the GNU Affero General Public License version 3, whose text you can read at LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pysweph-2.10.3.4-cp313-cp313-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: pysweph-2.10.3.4-cp313-cp313-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 782.8 kB
- Tags: CPython 3.13, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cd2e7a6306f36d4302d04fd55a2fc8652bb0444108c145edd53ec55e1c33aa1
|
|
| MD5 |
d735f1f5b75fcfead605e57ff984795a
|
|
| BLAKE2b-256 |
d14944ec76c4d23f542f944ef8df7d8ada2adc845e7b701a94de6ef117966604
|