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.4.tar.gz (32.9 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.4-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: csiapps-0.1.4.tar.gz
  • Upload date:
  • Size: 32.9 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.4.tar.gz
Algorithm Hash digest
SHA256 6bdde32beee01204a53ea3ce1a9a269a6ba7998c94a0639b45cd774f1c1b435e
MD5 ae24c0f38695f39f6c0146b814dc18de
BLAKE2b-256 e7a23b28a14722360401d412b8b90ffe17e5683e1b6cba1b727c30488a62ec7a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: csiapps-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 27.6 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fd0c80e21d7a0999672a1e596a53c0273fb1c70945952169e4f781293dc14be9
MD5 b458908d05dcc26b66c53be4f677dca8
BLAKE2b-256 8195d648b1bff931d7d8fba001a0445294fe2903eeb3752badff326d644f568a

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