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
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
Option 1: Install from PyPI (recommended)
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:
-
Update version
Bump the version in_version.pyand updateCHANGELOG.md. -
Build the package
Run:python -m build
This creates
.whland.tar.gzfiles inside thedist/folder. -
Install Twine (if not installed)
pip install twine
-
Upload to Test PyPI (optional)
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
Verify the package works by installing from Test PyPI.
-
Upload to PyPI (production)
twine upload dist/*
-
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)
| 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)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| 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.