Skip to main content

Python client for the TART catalogue ephemerides endpoint

Project description

TART Catalogue Python Client

Fetches TLE data from the catalogue server and computes satellite positions in ECEF or celestial (RA/Dec) coordinates.

Setup

uv sync

Usage

# ECEF positions (default)
uv run python -m tart_client.cli ecef

# Celestial (RA/Dec) positions
uv run python -m tart_client.cli celestial

# Custom server and date
uv run python -m tart_client.cli ecef \
  --url http://localhost:8876 \
  --date 2026-06-16T12:00:00Z

Or override the server URL:

export TART_CATALOGUE_URL=http://localhost:8876
uv run python -m tart_client.cli celestial

Library use

from tart_client import CatalogueClient

client = CatalogueClient()  # defaults to https://tart.elec.ac.nz/catalog
# Or: CatalogueClient(base_url="http://localhost:8876")

# ECEF positions
for sat in client.ecef_positions():
    print(sat["name"], sat["ecef_km"])

# Celestial positions
for sat in client.celestial_positions():
    print(sat["name"], sat["ra_hours"], sat["dec_degrees"])

Output

ECEF

[
  {
    "name": "GPS BIIR-2  (PRN 13)",
    "ecef_km": [12345.678, -23456.789, 3456.78],
    "velocity_km_s": [1.234, -2.345, 5.678]
  }
]

Celestial

[
  {
    "name": "GPS BIIR-2  (PRN 13)",
    "ra_hours": 12.345678,
    "dec_degrees": -45.678901,
    "distance_km": 26500.0
  }
]

How it works

  1. Fetch — GET /ephemerides returns raw TLE (name, line1, line2)
  2. Propagate — SGP4 propagator computes TEME position at the requested time
  3. Convert — astropy transforms TEME → ITRS (ECEF) or TEME → ICRS (RA/Dec)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tart_catalogue_client-0.3.3.tar.gz (37.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tart_catalogue_client-0.3.3-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file tart_catalogue_client-0.3.3.tar.gz.

File metadata

  • Download URL: tart_catalogue_client-0.3.3.tar.gz
  • Upload date:
  • Size: 37.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tart_catalogue_client-0.3.3.tar.gz
Algorithm Hash digest
SHA256 76db9cf8f6cd2c7261b39b7d839a04d21852fee13802f0bad55403c9c77159f2
MD5 0ca523774589ed4609ed72f6bbd3cf0f
BLAKE2b-256 8f37004b32e5a0f4f26cda0784a38f639bef15c77392c6f272e72fc91b4688d7

See more details on using hashes here.

File details

Details for the file tart_catalogue_client-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: tart_catalogue_client-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tart_catalogue_client-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ae342d327a7aab5e816e84f02b98ac6485a70b0c2c046202a4db2a17fa299b44
MD5 d0b06890624bc4b13c2ac7ebb0e6f511
BLAKE2b-256 54a3c0a13c91b70468a4fc6ad103a82112b6e69b98ff8c94b0e7e7b8d7a810bb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page