Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Python package

Kahi

KAHI is a powerful tool by offering a framework to define a workflow of sequential tasks using a plugin system that KAHI understands.

Plugins

Take a look on plugins examples in the repository https://github.com/colav/Kahi_plugins

Installation

To install KAHI, follow these simple steps:

  1. Make sure you have Python installed on your system.
  2. Open a terminal or command prompt.
  3. Run the following command:
pip install kahi

Additionally, if you require specific plugins, you can install them using the following command:

pip install plugin-name

Replace plugin-name with the name of the desired plugin.

If the user wants to install all available plugins run:

pip install kahi[all]

Usage

To use KAHI, you need to define a YAML file that contains the workflow and global configuration variables. Here is an example of a YAML file:

config:
  database_url: localhost:27017
  database_name: kahi
  log_database: kahi_log
  log_collection: log
workflow:
  scimago_sources:
    file_path: scimago/scimagojr 2020.csv
  doaj_sources:
    database_url: localhost:27017
    database_name: doaj
    collection_name: stage

In the config section, you can specify the MongoDB URL, database name, log database, and log collection for KAHI to use.

The workflow section contains the sequential tasks of the workflow. Each task is defined with a unique name and specific configuration options based on the data source. In the example above, three tasks are defined: ror_affiliations, staff_affiliations, and scienti_affiliations. Every task should be related to a plugin

Finally, to run the workflow, use the following command:

kahi_run --workflow worflow.yaml

Replace workflow.yaml with the path to your YAML file.

Suggested workflows can be found on our worflow repository.

Logging

KAHI keeps a detailed log of each plugin's execution in a mongodb collection, including the name, execution time, elapsed time, execution status, and error messages. This information is valuable for both users and developers, and it enables the ability to resume the workflow from the last successful task.

Plugins can take advantage of a researved parameter task. When the reserved paramer task is used, the log entry becomes unique with the name of the plugin and the task as a suffix.

Creating a template package

You can create a template package structure by running:

kahi_generate --plugin  myplugin

and a basic installable template called Kahi_myplugin will be created.

Contributing

If you are interested in contributing to KAHI or creating your own plugins, please refer to the kahi-plugins repository. It contains the necessary resources and documentation to implement new plugins easily. Feel free to submit pull requests or report any issues you encounter.

License

BSD-3-Clause License

Links

http://colav.udea.edu.co/

Metadata

Release files for Kahi 0.1.1a0

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

Source distribution (sdist)

Source distribution for Kahi 0.1.1a0
File Size Uploaded Provenance Actions
kahi-0.1.1a0.tar.gz 10.0 kB Without provenance Details for kahi-0.1.1a0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for Kahi 0.1.1a0
File Interpreter ABI Platform Actions
Kahi-0.1.1a0-py3-none-any.whl Python 3 none any Details for Kahi-0.1.1a0-py3-none-any.whl

Total release size: 22.5 kB

Release files / kahi-0.1.1a0.tar.gz

Download URL kahi-0.1.1a0.tar.gz
Size 10.0 kB
Tags Source
SHA-256 checksum
How to use checksums
275fff9f875f0cc7dbfb23a8dd1fcb47886b5eb417307a7090194d8c564ed421
BLAKE2b-256 checksum
How to use checksums
df4332e9eedb3fa021aae733e985c3d1c0974c410cb116070cec342a34804323
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.6

Release files / Kahi-0.1.1a0-py3-none-any.whl

Download URL Kahi-0.1.1a0-py3-none-any.whl
Size 12.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d77f1e0fd480f4cdd723ee0e1570c54655f240875bbd17b723d045088aba7568
BLAKE2b-256 checksum
How to use checksums
f48f5eb834aababbd57ff75e2ae267fc841254e942352ca93eb01e89fc91ff33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.6

Security for Kahi 0.1.1a0

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