Skip to content

Commit 20281ce

Browse files
committed
Release v1.0.11.
1 parent d5da2c1 commit 20281ce

2 files changed

Lines changed: 41 additions & 45 deletions

File tree

README.md

Lines changed: 40 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -2,84 +2,53 @@
22

33
Immanuel is a Python >= 3.10 package to allow your applications to painlessly produce simple, readable, chart-centred astrology data from [pyswisseph](https://github.com/astrorigin/pyswisseph), with extra calculations modelled on those of [astro.com](https://astro.com) and [Astro Gold](https://www.astrogold.io). Easy-to-use chart classes take date, time, and location data and return an object which can be output as either human-friendly text or easily serialised into JSON.
44

5-
## Documentation
65

7-
Full markdown documentation is available [here](https://github.com/theriftlab/immanuel-python/blob/master/docs/0-contents.md).
86

9-
## Quick Start
7+
Full markdown documentation is available [here](https://github.com/theriftlab/immanuel-python/tree/v1.0.11/docs/0-contents.md).
108

11-
If all that documentation looks boring, you can get started generating chart data in minutes. Simply install Immanuel, import the chart classes into your project, and with one line of code you can produce all the data you need to construct a full chart.
9+
## Quick Start
1210

13-
## Installation
11+
You can get started generating chart data in minutes. Simply install Immanuel:
1412

1513
```bash
1614
pip install immanuel
1715
```
1816

19-
## Chart Types
20-
21-
Currently Immanuel supports the following chart types:
22-
23-
* Natal
24-
* Solar return
25-
* Progressed
26-
* Synastry
27-
* Composite
28-
29-
## Example
30-
31-
Chart class constructors take dates in standard timezone-naive ISO format (YYYY-MM-DD HH:MM:SS), and coordinates in either standard text format (as in the following examples) or decimal. To generate data for a natal chart, you could use something like this:
17+
Now import Immanuel's chart classes and generate a natal chart from a date & coordinates:
3218

3319
```python
3420
from immanuel import charts
3521

3622

3723
natal = charts.Natal(dob='2000-01-01 10:00', lat='32n43', lon='117w09')
38-
```
39-
40-
## Returned Chart Data
4124

42-
The various chart types return their own sets of data, but for a basic natal chart you can expect to receive the following:
43-
44-
* Chart date
45-
* Chart coordinates
46-
* House system
47-
* Chart shape type (eg. bowl, splash etc.)
48-
* Whether the chart is diurnal (ie. daytime)
49-
* Moon phase
50-
* All chart objects (eg. planets, asteroids, primary angles etc.) and their positions & dignities if applicable
51-
* Houses
52-
* Aspects
53-
* Weightings (ie. which objects are in which elements / modalities etc.)
54-
55-
The data is available in both human-readable and JSON format. To see the human-readable planets & angles in the above natal chart:
56-
57-
```python
5825
for object in natal.objects.values():
5926
print(object)
6027
```
6128

62-
This will output all the chart objects in this format:
29+
This will output all the chart objects (planets, points, asteroids etc.) in this format:
6330

6431
```
6532
Sun 10°37'26" in Capricorn, 11th House
6633
Moon 16°19'29" in Scorpio, 8th House
6734
...
6835
```
6936

70-
We can get much more data from the JSON output like this:
37+
We can see much more data by serializing the chart's `objects` property to JSON like this:
7138

7239
```python
73-
# Add these extra imports at the top...
7440
import json
41+
7542
from immanuel.classes.serialize import ToJSON
43+
from immanuel import charts
7644

77-
# ...and try this after you've generated your chart
45+
46+
natal = charts.Natal(dob='2000-01-01 10:00', lat='32n43', lon='117w09')
7847

7948
print(json.dumps(natal.objects, cls=ToJSON, indent=4))
8049
```
8150

82-
Which will output all the chart objects in this format:
51+
Which will output each of the chart's objects in this format:
8352

8453
```json
8554
{
@@ -167,15 +136,42 @@ Note that the entire chart can also be serialized to JSON, eg.:
167136
print(json.dumps(natal, cls=ToJSON, indent=4))
168137
```
169138

139+
## Chart Types
140+
141+
Currently Immanuel supports the following chart types:
142+
143+
* Natal
144+
* Solar return
145+
* Progressed
146+
* Synastry
147+
* Composite
148+
149+
## Returned Chart Data
150+
151+
The various chart types return their own sets of data, but for a basic natal chart you can expect to receive the following:
152+
153+
* Chart date
154+
* Chart coordinates
155+
* House system
156+
* Chart shape type (eg. bowl, splash etc.)
157+
* Whether the chart is diurnal (ie. daytime)
158+
* Moon phase
159+
* All chart objects (eg. planets, asteroids, primary angles etc.) and their positions & dignities if applicable
160+
* Houses
161+
* Aspects
162+
* Weightings (ie. which objects are in which elements / modalities etc.)
163+
164+
All properties are available in both human-readable and JSON format as demonstrated above.
165+
170166
## Calculations
171167

172-
Calculations for the secondary progressions are based on those of astro.com. The same three methods for MC progression are available and will produce the same progressed date, sidereal time, and house positions as astro.com.
168+
Immanuel offers the same three methods for MC progression as astro.com, and will produce the same progressed date, sidereal time, and house positions.
173169

174170
Planetary dignity scores are based on those of Astro Gold, although these are somewhat flexible via the settings.
175171

176172
## Settings
177173

178-
The full documentation covers [settings](docs/6-settings.md) in more detail, but much of the output can be customised. The settings module allows you specify what data each chart returns, what planets etc. to include, and to fine-tune many intricate details of the aspect calculations.
174+
The full documentation covers [settings](https://github.com/theriftlab/immanuel-python/tree/v1.0.11/docs/6-settings.md) in more detail, but much of the output can be customised. The settings module allows you specify what data each chart returns, what planets etc. to include, and to fine-tune many intricate details of the aspect calculations.
179175

180176
## Tests
181177

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "immanuel"
7-
version = "1.0.10"
7+
version = "1.0.11"
88
description = "Painlessly produce both human-readable and JSON-formatted astrology chart data based on pyswisseph and astro.com."
99
authors = [
1010
{ name = "Robert Davies", email = "robert@theriftlab.com" },

0 commit comments

Comments
 (0)