Skip to main content

Helper functions and utilities for CSI data warehouse ingestion and Shiny web applications (Python port of the csiapps R package).

Project description

csiapps (Python)

Python port of the CSIO csiapps R package. Helper functions and utilities for CSI data warehouse ingestion and Shiny for Python web applications.

Full feature parity with the R package: the API client (make_request, fetch_*), the local sandbox (schema → ingest → retrieve, plus a dummy registration registry), and the Shiny app wrappers (ui_wrapper, server_wrapper). Sandbox mode is on by default so nothing hits production by accident.

Installation

pip install csiapps

Quickstart

import csiapps

csiapps.register_sandbox_schema("demo", {
    "type": "object", "required": ["id"],
    "properties": {"id": {"type": "string"}},
})
csiapps.make_request("api/warehouse/ingestion/primary/", method="POST",
    body={"source": "demo", "records": [{"id": "a1"}], "subject_field": "id"})
page = csiapps.make_request("api/warehouse/data-records", query={"source_uuid": "demo"})
print(page["count"])   # 1

See the cross-language documentation (R and Python side by side, plus a parity checklist) and the runnable examples/ (warehouse_ingest.py, app.py).

Development

Uses uv.

uv sync                        # install deps + dev tools
uv run pytest                  # run tests
uv run ruff check .            # lint
uv run --group docs mkdocs serve   # preview docs
uv build                       # build sdist + wheel

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

csiapps-0.1.1.tar.gz (49.6 kB view details)

Uploaded Source

Built Distribution

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

csiapps-0.1.1-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file csiapps-0.1.1.tar.gz.

File metadata

  • Download URL: csiapps-0.1.1.tar.gz
  • Upload date:
  • Size: 49.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for csiapps-0.1.1.tar.gz
Algorithm Hash digest
SHA256 35bd0a1725de3108b4178a99613de9d038222cd0ba5bfd40192d491281a50897
MD5 2cb953056ede298e24b1fb0375e47034
BLAKE2b-256 c053ae260b9c28b251de8e0c63e62b870756432faacff64f4e523313fa2372f3

See more details on using hashes here.

File details

Details for the file csiapps-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: csiapps-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for csiapps-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 02e6399db5c622f3b53ecc7872a5ed6653d21c42b1371d1f551389acaf5bd048
MD5 c4a82215f83d869cb0164d92f36f6f4a
BLAKE2b-256 cd6b742553d4c7faddac91048a32b960ffbeb29af144abb397fb3031e6e6f0fa

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