Links:
- Production deployment - https://astrocalc-api.onrender.com (note that this is on the free plan, if no one has visited the site in a while it may take up to 50 seconds to load)
- API Docs - https://astrocalc-api.onrender.com
- OpenAPI JSON - https://astrocalc-api.onrender.com/openapi.json
TODO:
-
Get birth chart
- Get sun, moon, and rising sign
- Get houses
- Get aspects, angles, & declinations
-
Get transit chart
- Daily
- Weekly
-
Look up upcoming astrological events (eclipses, retrogrades, full moons, planet sign changes, etc)
-
Cleanup & refactor code
- Western Astrology
- Zodiac: Tropical
- Planets: Traditional (Sun, Moon, Mercury, Venus, Mars, Jupiter, Saturn) + Uranus, Neptune, Pluto. Additionally, Chiron, Lillith, True North Node, True South Node
- Aspects: Conjunction, Opposition, Trine, Square, Sextile, Semi Square, Sesquiquadrate, Semi Sextile, Quincunx, Quintile, Bi Quintile, Parallel, Contra Parallel
- Houses: Placidius (Swiss Ephemeris)
- Calculations based on VSOP87 data (astronomia)
To install dependencies:
bun install
To run:
bun run index.ts
This project was created using bun init
in bun v1.2.5. Bun is a fast all-in-one JavaScript runtime.
- Although this project uses bun, it requires node 22 to be installed (node gyp 127) so the native modules build correctly.
This project is licensed under the AGPL license. I do not have a swiss ephemeris license, however I am using the OSS version of it and its associated data, which is published under a combination of the GNU GPL and GNU AGPL licenses, if making a derivative work of this project, you must also publish your source code under that same license. This is a legal requirement of the GNU GPL and GNU AGPL licenses. If you are unsure about the licensing of this project, please contact me at [email protected]. No code or data from Swiss Ephemeris is included in this project, instead it is provided as an NPM dependency and git submodule linking directly to the official astro.com published data. This project is not affiliated with astro.com or the Swiss Ephemeris project.