Skip to main content

Storyteller - DHS Database Viewer

Storyteller is a user-friendly web application designed to explore DHS (Demographic and Health Surveys) data.
It provides an intuitive interface for browsing datasets, running queries, and generating insights, making it easier for researchers, analysts, and storytellers to work with complex health and demographic information.


Table of Contents

  1. Overview
  2. Features
  3. Installation
  4. Usage
  5. Development
  6. Deploying to PyPI
  7. Contributing
  8. License
  9. Contact

Overview

The Storyteller app helps users unlock, search, and explore the full breadth of DHS datasets from any country or year.
It is built on top of Datasette and extends it with custom processors, exporters, and metadata tools.


Features

  • Browse DHS datasets across household, individual, and biomarker surveys.
  • Search across dozens of tables and thousands of records.
  • View variable definitions and relationships for every dataset.
  • Download filtered data for offline analysis.
  • Custom metadata export for reproducibility.
  • Simple CLI integration for automation.

Installation

You can install the latest stable release directly from PyPI:

pip install storyteller-dhs

Option 2: Install from source

Clone the repository and install in editable mode:

git clone https://github.com/kofiya-technologies/storyteller-DHS-database-viewer
cd storyteller-DHS-database-viewer
pip install pipenv
pipenv install --deploy --ignore-pipfile

Dependencies are managed with setup.py and Pipfile.


Usage

After installation, you can start the Storyteller app:

storyteller start "path/to/your/dhs-database.db"

Other commands:

  • Enable FTS manually:
    enable_fts --db_path="path/to/your/dhs-database.db"
    
  • Run predefined queries:
    storyteller query "path/to/your/dhs-database.db" --menu=mintiloai
    

Development

To build the package (wheel + sdist):

python -m build

To run the development build process with additional checks:

build_package.bat

Deploying to PyPI

These are the steps to publish a new release of Storyteller to PyPI:

  1. Update version
    Bump the version in _version.py and update CHANGELOG.md.

  2. Build the package
    Run:

    python -m build
    

    This creates .whl and .tar.gz files inside the dist/ folder.

  3. Install Twine (if not installed)

    pip install twine
    
  4. Upload to Test PyPI (optional)

    twine upload --repository-url https://test.pypi.org/legacy/ dist/*
    

    Verify the package works by installing from Test PyPI.

  5. Upload to PyPI (production)

    twine upload dist/*
    
  6. Verify release
    Visit PyPI Project Page and confirm your release.


Contributing

We welcome contributions!
Please fork the repository, create a new branch, and submit a pull request.


License

This project is licensed under the MIT License. See the LICENSE file for details.


Contact

kofiyatech
Email: kofiya.technologies@gmail.com
Website: https://kofiyatech.com

Metadata

Release files for storyteller-dhs 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for storyteller-dhs 0.1.3
File Size Uploaded Provenance Actions
storyteller_dhs-0.1.3.tar.gz 13.7 kB Without provenance Details for storyteller_dhs-0.1.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for storyteller-dhs 0.1.3
File Interpreter ABI Platform Actions
storyteller_dhs-0.1.3-py3-none-any.whl Python 3 none any Details for storyteller_dhs-0.1.3-py3-none-any.whl

Total release size: 28.0 kB

Release files / storyteller_dhs-0.1.3.tar.gz

Download URL storyteller_dhs-0.1.3.tar.gz
Size 13.7 kB
Tags Source
SHA-256 checksum
How to use checksums
61bb10239422383af2b5b9e773469c350416e89467c015353113d0e2e780a5f2
BLAKE2b-256 checksum
How to use checksums
a59e4ff70a9cecf5b85910807f9bc18da6b402bc0718a62aefb8a3267ca140ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.10

Release files / storyteller_dhs-0.1.3-py3-none-any.whl

Download URL storyteller_dhs-0.1.3-py3-none-any.whl
Size 14.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
36a5c91b97798e91a999b7ab7717f53049efeae5339ccdbc990eefcb45b94902
BLAKE2b-256 checksum
How to use checksums
f96ab4ace54ccb4aa5bae23925ab71e4e0f6713ba88ad368f24552ed633e7e44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.8.10

Security for storyteller-dhs 0.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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