A library that computes the ephemerides.
Tung Lam Nguyen Le ff69f40b5f Add documentation, change enum constants, change output object of _search_earth_season_change 3年前
.github ci: remove Commitlint workflow (replaced by semantic-pull-request) (#25) 3年前
kosmorrolib Add documentation, change enum constants, change output object of _search_earth_season_change 3年前
tests fix: add missing enums to the exposed model, rename data.py to model.py (#11) 4年前
.coveragerc test: fix coverage config 4年前
.editorconfig ci: add support for Windows (#14) 4年前
.gitignore build: prepare for the distribution (#10) 4年前
CHANGELOG.md build: bump version 0.11.2 4年前
CONTRIBUTING.md docs: add docs and license 4年前
LICENSE docs: add docs and license 4年前
Makefile chore: fix files to commit on tag 4年前
Pipfile fix: remove useless dev dependencies (#16) 4年前
README.md docs: fix coverage badge 4年前
setup.py build: prepare for the distribution (#10) 4年前
tests.py test: add missing module in tests (related to #18) (#19) 4年前

README.md

Kosmorrolib - a library to compute your ephemerides!

Coverage Status Version on PyPI Discord

Installation

Requirements

Kosmorrolib requires the following software to work:

  • Python ≥ 3.7.0
  • PIP

Production environment

Keep in mind that Kosmorrolib is not considered as stable for now.

PyPI

Kosmorrolib is available on PyPI: pip install kosmorrolib.

Development environment

First, install Pipenv.

Clone this repository and run pipenv sync to install all the dependencies. And that’s all, your development environment is ready for the fight! 👏

Using the Kosmorrolib

The Kosmorrolib provides three functions that you can use in your code:

#!/usr/bin/env python3

import kosmorrolib
from datetime import date

position = kosmorrolib.Position(50.5824, 3.0624)

# Get the moon phase for today
moon_phase = kosmorrolib.get_moon_phase()

# Get the moon phase for June 9th, 2021
moon_phase = kosmorrolib.get_moon_phase(date.fromisoformat('2021-06-09'))

# Get a list of objects representing the ephemerides of today.
ephemerides = kosmorrolib.get_ephemerides(position)

# Get a list of objects representing the ephemerides of June 9th, 2021.
ephemerides = kosmorrolib.get_ephemerides(position, date.fromisoformat('2021-06-09'))

# Get a list of objects representing the events of today.
events = kosmorrolib.get_events()

# Get a list of objects representing the events on June 9th, 2021.
events = kosmorrolib.get_events(date.fromisoformat('2021-06-09'))

# Note that each method provides an optional parameter for the timezone:
moon_phase = kosmorrolib.get_moon_phase(timezone=2)
ephemerides = kosmorrolib.get_ephemerides(position, timezone=2)
events = kosmorrolib.get_events(timezone=2)