Skip to main content

Command-line tool and Python client for the SJVAir air quality API.

Project description

sjvair

Command-line tool and Python client for SJVAir — a network of air quality monitors across California's San Joaquin Valley.

📖 Full documentation: https://SJVAir.github.io/sjvair-python/

pip install sjvair

Quickstart

from sjvair import SJVAirClient

with SJVAirClient() as client:
    for monitor in client.monitors.list():
        print(monitor['id'], monitor['name'])
sjvair monitors list --county Fresno --output fresno.csv
sjvair regions list --type county

Development

# Install with dev dependencies
uv sync --group dev

# Run tests (live tests hit the real API and are excluded by default)
uv run pytest
uv run pytest -m live      # run the live integration tests

# Lint and format
uv run ruff check sjvair/
uv run ruff format sjvair/

# Type check
uv run ty check sjvair/

Documentation

Docs are built with Sphinx + MyST and deployed to GitHub Pages on every push to main.

# Install with docs dependencies
uv sync --group docs

# Build once (output in docs/_build/html)
uv run sphinx-build -b html docs docs/_build/html

# Build, serve, and auto-rebuild on change
uv run sphinx-autobuild docs docs/_build/html --port 8080

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

sjvair-0.1.0a2.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

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

sjvair-0.1.0a2-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

Details for the file sjvair-0.1.0a2.tar.gz.

File metadata

  • Download URL: sjvair-0.1.0a2.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sjvair-0.1.0a2.tar.gz
Algorithm Hash digest
SHA256 b73e950f19b7e805985b7dab9c2e4e18f31c013d09f1325e77305423711b3c70
MD5 753917dd8a28e9c5a721cbfaac9eca3d
BLAKE2b-256 ded5a6304bba452e49f8483ef8cce5985e7071db3ac7d14aedf653c965810cc6

See more details on using hashes here.

Provenance

The following attestation bundles were made for sjvair-0.1.0a2.tar.gz:

Publisher: publish.yml on SJVAir/sjvair-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sjvair-0.1.0a2-py3-none-any.whl.

File metadata

  • Download URL: sjvair-0.1.0a2-py3-none-any.whl
  • Upload date:
  • Size: 40.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sjvair-0.1.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 8666dbfad28e26c0a07f0c26ec14c3b007a514e0c50aaa75ff504f9e1fcb1fb3
MD5 dc61fe5d18a2353031203bb89a989073
BLAKE2b-256 17d52843013abaaadbfdfbc65d3ad94d63a908129e7b8a9a9d0ca783179e493d

See more details on using hashes here.

Provenance

The following attestation bundles were made for sjvair-0.1.0a2-py3-none-any.whl:

Publisher: publish.yml on SJVAir/sjvair-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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