Install

  1. Open a terminal and clone the repository on your local machine :
    git clone https://github.com/tig12/observe
    (or download a zip version of the code: github.com/tig12/observe/archive/refs/heads/main.zip)
  2. Install php, sqlite3 and some php extensions.
    On debian-based systems :
    sudo apt install php8.5
    sudo apt install sqlite3
    sudo apt install php8.5-{yaml,sqlite3,bz2,zip,gd}
    

Directory structure

observe/
    ├── config              # Configurations of the studies
    ├── docs                # Current documentation
    ├── output              # HTML pages generated by the program -- NOT VERSIONED --
    ├── src                 # Source code
    ├── test                # Code to test the program
    ├── var                 # Intermediate files -- NOT VERSIONED --
    ├── vendor              # Auxiliary generic code
    ├── config.yml.dist     # Global configuration, for ephemeris computation
    ├── phpunit.xml         # For tests
    └── run-observe.php     # Main entry point of the program
In the rest of this doc, directory observe/ is called the root directory.
All the commands to run the program are issued from the root directory.

The files you need to know about are :
  • run-observe.php is the unique entry point to use the program.
  • config/ contains the the commands that you need to edit.
  • config.yml.dist needs to be copied (see below).
If you use the default values, you need to create directories output and var:
mkdir {output,var}
(these directories can be changed in the study files of config/)

Configuration

Create a file config.yml by copying config.yml.dist :
cp config.yml.dist config.yml
config.yml is used to configure ephemeris computation. Observe is using Swiss Ephemeris.
For studies containing dates without times, planet positions are pre-computed and stored in a sqlite database.
This is configured in section one-day-ephemeris of config.yml.

Swiss ephemeris

Swiss ephemeris is configured in section swetest of config.yml.
The binary can be downloaded from https://github.com/aloistr/swisseph/blob/master/bin/swetest
Under Windows, the binary can probably be downloaded from https://github.com/aloistr/swisseph/blob/master/windows/sweph.zip, and inside the zip in bin/swetest.exe (not tested).

You also need to download ephemeris files from https://github.com/aloistr/swisseph/tree/master/ephe.
The precise files to download depend on your needs.
sepl_18.se1 Main planets (Sun -> Pluto), lunar node 1800 - 2399
sepl_12.se1 Main planets (Sun -> Pluto), lunar node 1200 - 1799
semo_18.se1 Moon 1800 - 2399
semo_12.se1 Moon 1200 - 1799
seas_18.se1 Asteroids Ceres Pallas Juno Vesta Chiron 1800 - 2399
seas_12.se1 Asteroids Ceres Pallas Juno Vesta Chiron 1200 - 1799
Note : this doc about Swiss ephemeris must be tested, see Swiss ephemeris doc to be sure.
Next: Usage