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.0.tar.gz (49.5 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.0-py3-none-any.whl (26.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: csiapps-0.1.0.tar.gz
  • Upload date:
  • Size: 49.5 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.0.tar.gz
Algorithm Hash digest
SHA256 a2b0f08439cb023fe6d677948528e45597fe2bfff3281e0068d01003307145f4
MD5 d0f88f0311477a360cfc47ba98e9e959
BLAKE2b-256 e6787030c91fc4d681367e5833e1ea8be8d60dbfa05ccf2f272549ec6bc33de8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: csiapps-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 26.5 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 435507b76da403a9326f3b7b343fa083b9b32b4b9163a432c8cbbc5d92d00f6e
MD5 6d6bd867ef26b1817875da62cc1566cd
BLAKE2b-256 dcd6864a5fb89e477c57e6b14721c97076966d1805d98d634a984afb001c2755

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