Skip to main content

HOLMES

ci holmes ci holmes-rs holmes-hydro pypi version holmes-rs pypi version Supported Python Version Documentation

HOLMES (HydrOLogical Modeling Educational Software) is a software developed to teach operational hydrology. It is developed at Université Laval, Québec, Canada.

📖 Documentation · 📦 PyPI

The dashboard guides students through a modeling pipeline — stations → weather → model → calibration → simulation → projection — starting from an interactive map of hydrometric stations. The backend is Starlette, the frontend is vanilla JavaScript with an Elm architecture (d3 and Leaflet), and communication is mostly over WebSocket. All numerical computation runs in holmes-rs, a Rust extension.

Usage

Installation

pip install holmes-hydro

Running HOLMES

After installation, start the dashboard with:

holmes run

The web interface will be available at http://127.0.0.1:8000.

Other commands:

holmes download     # rebuild the published datasets from their true sources
holmes experiment   # run batch calibration experiments

Station, weather, and projection data are fetched from their true sources at runtime and cached under data/; prebuilt products are served from the repo so a fresh install works without any credentials.

Configuration

Customize the server by creating a .env file:

DEBUG=True          # Enable debug mode (default: False)
RELOAD=True         # Enable auto-reload on code changes (default: False)
HOST=127.0.0.1      # Server host (default: 127.0.0.1)
PORT=8000           # Server port (default: 8000)

Development

Setup

  1. Install uv:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Clone and install in development mode:

    git clone https://github.com/antoinelb/holmes.git
    cd holmes
    uv sync
    

Running

uv run holmes run

Or activate the virtual environment and run directly:

source .venv/bin/activate
holmes run

Code Quality

make static-analysis

Tests

make test       # unit + integration (100% coverage) and the Rust suites
make test-e2e   # Playwright end-to-end tests

References

Download files

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

Source Distribution

holmes_hydro-4.0.0.tar.gz (941.1 kB view details)

Uploaded Source

Built Distribution

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

holmes_hydro-4.0.0-py3-none-any.whl (306.0 kB view details)

Uploaded Python 3

File details

Details for the file holmes_hydro-4.0.0.tar.gz.

File metadata

  • Download URL: holmes_hydro-4.0.0.tar.gz
  • Upload date:
  • Size: 941.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for holmes_hydro-4.0.0.tar.gz
Algorithm Hash digest
SHA256 be3a5fb27e42bca91d3c259f8c311f1cec23393ef5e47a28d17f5fbbbcd65a61
MD5 4a32fbbfb7f13ae7bca7e197f533b1ab
BLAKE2b-256 0d5ff9cf16fc7ed976b8c5c81723ac3ac60343a5ee63db2f5fd7a42408664191

See more details on using hashes here.

Provenance

The following attestation bundles were made for holmes_hydro-4.0.0.tar.gz:

Publisher: ci-holmes.yml on antoinelb/holmes

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

File details

Details for the file holmes_hydro-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: holmes_hydro-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 306.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for holmes_hydro-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 16416beabfc9ffd6615cc282f72d49da65eddb470b0f1ea191ec63035c7f03ce
MD5 48a873981258cae8de831a38df71360c
BLAKE2b-256 eedd5cf4f6d3b4d05127bd9f828566616a8aa2fe961e0e47e9ac86d062e429a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for holmes_hydro-4.0.0-py3-none-any.whl:

Publisher: ci-holmes.yml on antoinelb/holmes

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

Release history Release notifications | RSS feed

4.5.1

2 files

4.5.0

2 files

4.4.0

2 files

4.3.0

2 files

4.2.1

2 files

4.1.0

2 files

This release

4.0.0 This release

2 files

3.5.0

2 files

3.4.4

2 files

3.4.3

2 files

3.4.2

2 files

3.4.1

2 files

3.4.0

2 files

3.3.8

2 files

3.3.7

2 files

3.3.6

2 files

3.3.5

2 files

3.3.4

2 files

3.3.3

2 files

3.3.2

2 files

3.3.1

2 files

3.3.0

2 files

3.2.5

2 files

3.2.2

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page