CKAN Extension Organogram

Keitaro
3 min readFeb 22, 2024

Data portals play a crucial role in providing open access to datasets and fostering transparency in various domains. CKAN, a widely used open-source data portal platform, offers a plethora of features to manage and showcase datasets effectively. However, sometimes it’s essential to go beyond raw data and provide users with insightful visualizations. This is where ckanext-organogram comes into play.

In this blog post, we’ll explore ckanext-organogram, an extension designed specifically for CKAN, that empowers users to create interactive organogram charts to visualize organizational hierarchies. Whether managing a government dataset or building a corporate data portal, ckanext-organogram adds an extra layer of understanding by visually representing complex organizational structures.

We’ll delve into the installation process, configuration options, and development guidelines to help you start with ckanext-organogram. Whether you’re a CKAN user seeking to enhance your data portal or a developer interested in contributing to the project, this blog post will equip you with the necessary knowledge to leverage ckanext-organogram’s capabilities effectively.

Requirements

For example, you might want to mention here which versions of CKAN this extension works with.

Installation

To install ckanext-organogram:

Activate your CKAN virtual environment, for example:

. /usr/lib/ckan/default/bin/activate

Install the ckanext-organogram Python package into your virtual environment:

pip install ckanext-organogram

Add organogram to the ckan.plugins setting in your CKAN config file (by default the config file is located at /etc/ckan/default/production.ini).

Restart CKAN. For example if you’ve deployed CKAN with Apache on Ubuntu:

sudo service apache2 reload

Config Settings

Document any optional config settings here. For example:

# The minimum number of hours to wait before re-checking a resource
# (optional, default: 24).
ckanext.organogram.some_setting = some_default_value

Development Installation

To install ckanext-organogram for development, activate your CKAN virtualenv and do:

git clone https://github.com//ckanext-organogram.git
cd ckanext-organogram
python setup.py develop
pip install -r dev-requirements.txt

Running the Tests

To run the tests, do:

nosetests --nologcapture --with-pylons=test.ini

To run the tests and produce a coverage report, first make sure you have coverage installed in your virtualenv (pip install coverage) then run:

nosetests --nologcapture --with-pylons=test.ini --with-coverage --cover-package=ckanext.organogram --cover-inclusive --cover-erase --cover-tests

Registering ckanext-organogram on PyPI

ckanext-organogram should be availabe on PyPI as https://pypi.python.org/pypi/ckanext-organogram. If that link doesn’t work, then you can register the project on PyPI for the first time by following these steps:

Create a source distribution of the project:

python setup.py sdist

Register the project:

python setup.py register

Upload the source distribution to PyPI:

python setup.py sdist upload

Tag the first release of the project on GitHub with the version number from the setup.py file. For example if the version number in setup.py is 0.0.1 then do:

git tag 0.0.1
git push --tags

Releasing a New Version of ckanext-organogram

ckanext-organogram is availabe on PyPI as https://pypi.python.org/pypi/ckanext-organogram. To publish a new version to PyPI follow these steps:

Update the version number in the setup.py file. See PEP 440 for how to choose version numbers.

Create a source distribution of the new version:

python setup.py sdist

Upload the source distribution to PyPI:

python setup.py sdist upload

Tag the new release of the project on GitHub with the version number from the setup.py file. For example if the version number in setup.py is 0.0.2 then do:

git tag 0.0.2
git push --tags

In conclusion

ckanext-organogram is a valuable extension for CKAN that enhances data portals by providing interactive organogram chart visualizations. It helps users visually represent complex organizational hierarchies, making it useful for government and corporate data portals. The blog post covers installation, configuration, and development guidelines, equipping users and developers with the necessary knowledge to leverage its capabilities effectively. By incorporating ckanext-organogram, users gain a deeper understanding of organizational structures, promoting transparency and improving the user experience on CKAN-powered data portals.

--

--

Keitaro

Keitaro is a Linux and Open-source software company that develops solutions empowering organizations and enterprises around the world.