This release is a pre-release and may not be stable for production use.
A Python Package for Stellar Photometry
Stellarphot is a Python package to allow you to turn reduced astronomical images of point sources (e.g. stars) into useful photometry, with a focus on variable star and exoplanet transit observations. Specifically:
- If you have reduced astronomical images as FITS files but haven't obtained photometry yet,
stellarphotcan perform aperture photometry on your images. - If you already have aperture photometry for a field,
stellarphotcan- choose comparison stars based on a catalog (e.g. APASS DR9),
- calculate relative flux (like AstroImageJ),
- calculate calibrated magnitudes by transforming to a catalog (e.g. APASS DR9), and/or
- calculate calibrated magnitudes with a user-provided set of comparison stars (as is done in AAVSO submissions).
- export ensemble photometry results in the AAVSO Extended File Format for direct upload to WebObs.
- If you are working with exoplanet transit observations,
stellarphotcan turns the photometry into exoplanet transit light curves (see installation notes below).
Installation
stellarphot requires Python 3.11 or later. You can install stellarphot using uv, pixi, pip or conda. These tools access one of two package repositories, conda-forge or PyPI.
uvandpipuse the PyPI package repository which currently has the following version of stellarphot:pixiandcondause the conda-forge package repository (althoughpixican use PyPI instead) which currently has the following version of stellarphot:
Both pixi and uv work on a model where you create a working directory for your project and install the packages into that working directory. This is a good way to keep your work organized and avoid conflicts with other Python packages you may have installed. You can examine the documentation for uv or pixi for details on how to use those tools.
conda and pip work on a model where you install the packages into your existing Python environment. This allows you to get started quickly, but you may run into conflicts with other packages you have installed.
Available extras
stellarphot's dependencies are grouped into options so you can install only what you need:
| Option | Adds |
|---|---|
| (none, base install) | The headless/scriptable engine (data structures, photometry, catalog access). Does not include the Jupyter/widget GUI. |
gui |
The Jupyter notebook/widget interface. |
exoplanet |
Exoplanet transit light-curve fitting (pytransit). |
all |
Everything above. |
Note: Only the full (all) install is available from conda-forge, via conda or pixi's conda-forge mode (see the all row below for both pixi commands). Partial installs (gui or exoplanet alone) require PyPI, via pixi --pypi, uv, or pip.
Environmental Setup
uv and pixi first need a project directory to install into (replace project_dir_name with a name of your choice):
uv init project_dir_name && cd project_dir_name # uv
pixi init project_dir_name && cd project_dir_name # pixi
conda and pip install directly into your current Python environment, so no setup step is needed.
Installation commands
| Option | uv |
pixi |
conda |
pip |
|---|---|---|---|---|
| base | uv add stellarphot |
pixi add --pypi stellarphot |
โ | pip install stellarphot |
gui |
uv add "stellarphot[gui]" |
pixi add --pypi "stellarphot[gui]" |
โ | pip install "stellarphot[gui]" |
exoplanet |
uv add "stellarphot[exoplanet]" |
pixi add --pypi "stellarphot[exoplanet]" |
โ | pip install "stellarphot[exoplanet]" |
all |
uv add "stellarphot[all]" |
pixi add stellarphot (conda-forge)pixi add --pypi "stellarphot[all]" (PyPI) |
conda install -c conda-forge stellarphot |
pip install "stellarphot[all]" |
Getting started with stellarphot
- Start Jupyterlab from the command line:
jupyter lab(oruv run jupyter laborpixi run jupyter labif you installed withuvorpixi). - Once JupyterLab opens in your web browser, open the Launcher (see Figure below)
- Click on the notebook you want (see figure below) and follow the instructions in the notebook. Output files and the settings used to generate them will show up in the file browser
Questions?
Feel free to contact @mwcraig or @JuanCab with your questions about using stellarphot.
Contributors
License
This project is Copyright (c) 2019-2026 The Stellarphot Team and licensed under the terms of the BSD 3-Clause license. This package is based upon the Astropy package template which is licensed under the BSD 3-clause license.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stellarphot-2.2.0b1.tar.gz.
File metadata
- Download URL: stellarphot-2.2.0b1.tar.gz
- Upload date:
- Size: 938.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f05c2e8dfef5d03b1ff2469aa1b3b023859666373c127749094e1d26620af38
|
|
| MD5 |
8ffd6c2abdc7841d09916b48fe53345a
|
|
| BLAKE2b-256 |
a0a940f54bbbf212af04ae93eb5ca50d6c151e027d5ceaf97b1ce94d6f8468a4
|
Provenance
The following attestation bundles were made for stellarphot-2.2.0b1.tar.gz:
Publisher:
publish.yml on feder-observatory/stellarphot
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
stellarphot-2.2.0b1.tar.gz -
Subject digest:
1f05c2e8dfef5d03b1ff2469aa1b3b023859666373c127749094e1d26620af38 - Sigstore transparency entry: 2446022778
- Sigstore integration time:
-
Permalink:
feder-observatory/stellarphot@900bb8aecf16a797b88de33fa5caf3a771b90a81 -
Branch / Tag:
refs/tags/2.2.0beta1 - Owner: https://github.com/feder-observatory
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@900bb8aecf16a797b88de33fa5caf3a771b90a81 -
Trigger Event:
release
-
Statement type:
File details
Details for the file stellarphot-2.2.0b1-py3-none-any.whl.
File metadata
- Download URL: stellarphot-2.2.0b1-py3-none-any.whl
- Upload date:
- Size: 1.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00e2ab2e5ad03435fc8ece780a1127673a9ba46a04f41e9d3ee4c79ae80d3fa9
|
|
| MD5 |
dd5471cf91d1d4ef630f55d57aae1b75
|
|
| BLAKE2b-256 |
746ad43485fd7b9d86ef334a388eb83c8fe397d72866bd321f6c8c45d33eeb20
|
Provenance
The following attestation bundles were made for stellarphot-2.2.0b1-py3-none-any.whl:
Publisher:
publish.yml on feder-observatory/stellarphot
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
stellarphot-2.2.0b1-py3-none-any.whl -
Subject digest:
00e2ab2e5ad03435fc8ece780a1127673a9ba46a04f41e9d3ee4c79ae80d3fa9 - Sigstore transparency entry: 2446023050
- Sigstore integration time:
-
Permalink:
feder-observatory/stellarphot@900bb8aecf16a797b88de33fa5caf3a771b90a81 -
Branch / Tag:
refs/tags/2.2.0beta1 - Owner: https://github.com/feder-observatory
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@900bb8aecf16a797b88de33fa5caf3a771b90a81 -
Trigger Event:
release
-
Statement type: