MyAstro is an astrological processor written and tested by Codex under the guidance of a person with practical experience in astrology.
The program was created for astrologers and people who work with natal charts, with the perspective of future integration into a website. The main idea of MyAstro is to give users the ability to quickly build an accurate natal chart with correct aspect calculation, without heavy desktop software, subscriptions, or dependence on external astrological APIs.
MyAstro builds two main types of charts:
- a current chart for the present moment, connected to a real-time timer, with minute-by-minute changes of planetary and house positions in real time;
- a personal birth chart — a natal chart based on an individual's birth data.
For a natal chart, the user enters the day, month, year, exact birth time, and place of birth. After that, the program determines the geographic coordinates, time zone, planetary positions, astrological houses, house cusps, and aspects.
The heart of the program is the local astro-runtime module. It performs the calculations, processes requests from the page, searches for cities, determines coordinates, and returns the final data for the chart.
Astrological calculations are performed using Swiss Ephemeris through the local @swisseph/node library. MyAstro does not use an external astrological API to calculate the chart.
This means that planetary positions, houses, cusps, and aspects are calculated locally inside the program.
MyAstro includes a large independent local database of populated places from around the world, with geographic coordinates and time zones.
The database contains more than 300,000 records, collected and cleaned specifically for astrological chart calculation. It keeps only the data needed for building a chart: place name, country, region, latitude, longitude, and time zone.
The program first searches for a place in the local database. If the required city is missing, or if the user enters a difficult or unusual version of the name, the program can use the internet as a fallback source for geodata.
The Russian database is stored in a separate heavy file and is not loaded first. It is connected only when the user explicitly searches for a populated place in Russia, and it may take a few seconds during the first processing. After the first load, searching this database works much faster.
MyAstro displays:
- planetary positions in zodiac signs;
- planetary degrees;
- planetary retrograde status;
- Lilith;
- North and South Lunar Nodes;
- Asc, Dsc, MC, IC;
- astrological house cusps;
- aspect table;
- table of planets in signs;
- table of house cusps.
The program includes a choice of astrological house systems. It also has quick toggles for disabling fictional points: Lilith, Rahu, and Ketu.
MyAstro has a carefully designed aspect calculation logic. Aspects are not built mechanically only by angular distance. The program takes astrological interaction logic into account and does not create aspects through signs that do not have a visible aspect connection.
This was done so that the aspect table is closer to practical astrological work, rather than just being a mathematical list of angular distances.
MyAstro has a fully implemented visual chart-building interface. The chart is rendered directly in the browser and immediately shows the main elements of the natal chart, as well as tables of aspects, planetary positions in houses, and house cusps with precise degree values.
The user sees the chart wheel, planets, zodiac signs, houses, axes, aspects, and tables with calculated data.
The main parts of MyAstro are:
index.html— the program interface;styles.css— page styling;astro-runtime/astro-server.cjs— the local server and calculation core;astro-runtime/data— cleaned local databases of populated places;astro-runtime/package.json— calculation module dependencies;INSTALL_FIRST.bat— first-time installation file for Windows;START_ASTRO_CALCULATOR.bat— program launch file for Windows.
After downloading MyAstro from GitHub, the user does not need to open the code, install VS Code, or manually type commands in the terminal. Everything is prepared to run through regular .bat files.
After unpacking the MyAstro folder, run this file once:
INSTALL_FIRST.bat
This file automatically prepares the local calculation core of the program and installs the required technical components.
Important: an internet connection is required for the first installation. MyAstro needs internet access only to download the required runtime components. After the first installation is completed successfully, the program can be launched normally through START_ASTRO_CALCULATOR.bat.
After the installation is completed successfully, you do not need to run this file every time.
For regular use, run this file:
START_ASTRO_CALCULATOR.bat
After launch, the local page will open automatically in your browser:
http://localhost:4173
Do not close the startup window while using the program. If you close it, the local server will stop and the page will no longer work.
Do not open index.html directly by double-clicking it. It is only the visual page of the program. For accurate astrological calculations, the local astro-runtime server must be running, because it performs the chart calculations.
Correct usage:
First time: INSTALL_FIRST.bat
After that: START_ASTRO_CALCULATOR.bat
Check whether Node.js LTS is installed. If it is not installed, download and install the current LTS version from the official website:
https://nodejs.org/
After installing Node.js, run again:
INSTALL_FIRST.bat
Then run:
START_ASTRO_CALCULATOR.bat
MyAstro was created as a practical astrological tool with the perspective of web integration. It can be used as the foundation for an astrology page, a natal chart generation service, or a personal web calculator for astrologers.
Production: ZverinaLev