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.3.tar.gz (32.8 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.3-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: csiapps-0.1.3.tar.gz
  • Upload date:
  • Size: 32.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for csiapps-0.1.3.tar.gz
Algorithm Hash digest
SHA256 0406be8ce7d1405c44dd2a91318b99c78fb36335490b568620d89350c8e7f4d6
MD5 5127dcf12308173c2fabc84d1d3fc4e9
BLAKE2b-256 dff31f663d9391aa0b4934b9c0f044b89f604d2dfc3b2debf6bfec84e38d1aeb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: csiapps-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for csiapps-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c8184e3157a120dd78d2c2ac8c1beada4e89835faf0f5a818f810a1afe369857
MD5 8980c01974d5b4f80d73a518ecf4580c
BLAKE2b-256 e548e32e02aafb530f345521d5b6fea6e9bb2bfe57135965e6df3c1829e8d96e

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