Extensions
From CKAN
The CKAN codebase is open source so that different organisations can customise it for their own needs. As CKAN has grown in popularity it has become especially important to organise the code in a way that can accommodate the customisations which different organisations require without those changes interfering with customizations required by other organisations.
To meet this need we have introduced the concepts of CKAN extensions, a way to extend CKAN using plugin pointers and workers. Extensions complement the existing rich API by providing a way to extend CKAN functionality.
Developing Extensions
- Dive straight in (developer docs): http://docs.ckan.org/en/latest/plugins.html
If you create a new extension, please document it here. Implementations of plugin interfaces should be documented separately on the Plugins page.
Tutorial
Listing Extensions Here
Please use the following listing format:
* Name: * URL: * Maintainer: * Official Extension: Yes | No
Optional items:
* Repo: * Status: Alpha | Production
Production Extensions
Apps and Ideas
Apps and ideas catalogue extension for CKAN. Associate apps and ideas to datasets.
- Name: apps
- URL: https://github.com/okfn/ckanext-apps
- Maintainer: CKAN Team
- Official Extension: Yes
- Repo: https://github.com/okfn/ckanext-apps
- Status: Beta
Disqus Comments
Lets users add comments to packages. Can also display latest comments on the CKAN front page.
- Name: disqus
- Author: Friedrich Lindenberg
- Code repo: https://github.com/okfn/ckanext-disqus
- Pip path: git+https://github.com/okfn/ckanext-disqus#egg=ckanext-disqus
Google Analytics
Integrate google analytics with your CKAN site including recording of download stats for individual resources.
- Name: googleanalytics
- URL: http://github.com/okfn/ckanext-googleanalytics
- Maintainer: CKAN Team
- Official Extension: Yes
- Repo: http://github.com/okfn/ckanext-googleanalytics
- Status: Production
Data Preview
As of CKAN v1.5 this extension is deprecated as data preview is now integrated into CKAN core.
Provides previewing of data resources.
- Name: datapreview
- Code repo: deleted
Webhooks service notification
- Name: webhooks
- State: production
- Maintained: core, Friedrich Lindenberg <friedrich.lindenberg@okfn.org>
- Code: https://github.com/okfn/ckanext-webhooks
- Pip: -e git+https://github.com/okfn/ckanext-webhooks
- Use: requires ckanext-queue, worker plugin registers as entry point
WebHooks to notify other sites of updates in CKAN via HTTP POST updates.
Moderated Edits
- Name: moderatededits
- State: beta
- Maintained: core, John Glover
- Code: https://github.com/okfn/ckanext-moderatededits
- Pip: -e git+https://github.com/okfn/ckanext-moderatededits#egg=ckanext-moderatededits
Allows for pending revisions to be created, then presented to an admin as a differential to the current active version, and eventually merged.
See:
- http://ckan.org/2011/06/20/moderated-edits/
- http://trac.ckan.org/ticket/1141
- http://trac.ckan.org/ticket/1129
Apache Solr search backend
- Name: solr
- State: production
- Maintained: core, Friedrich Lindenberg <friedrich.lindenberg@okfn.org>
- Code: https://bitbucket.org/okfn/ckanext-solr
- Pip: -e hg+https://bitbucket.org/okfn/ckanext-solr#egg=ckanext-solr
- Use: see README.md, can use ckanext-queue, see also Solr Search
Solr search for CKAN, features facets, stats, and full-text indexing.
NB: This extension is only suitable for CKAN up to version 1.4.3.1. From CKAN 1.5, Solr is used by default and the functionality of this extension is moved into the core of CKAN.
Queue support and worker interface
- Name: queue+worker
- State: production
- Maintained: core, Friedrich Lindenberg <friedrich.lindenberg@okfn.org>
- Code: https://github.com/okfn/ckanext-queue
- Pip: -e git+https://github.com/okfn/ckanext-queue#ckanext-queue
- Use: see README.md
The CKAN worker is a base class for worker tools that consume CKAN queue notifications in order to perform some type of processing based on those messages.
OGC OWS Support
- Name: ows
- State: production
- Maintained: core, William Waites <will.waites@okfn.org>
- Code: https://bitbucket.org/ww/ckanext-ows
- Pip: -e hg+https://bitbucket.org/ww/ckanext-ows#egg=ckanext-ows
- Use: TODO
CKAN modules supporting OWS services such as WMS and CSW
CKAN RDF
RDF features for CKAN. DCAT read/write API, integration with SPAQRL endpoint for (catalog) data.
- Name: ckanext-rdf
- State: production
- Maintained: Core
- Code: https://github.com/okfn/ckanext-rdf
- Docs: See README.
Wordpresser - use Wordpress as a CMS for CKAN
Allows you to extend your CKAN install with pages that are created and edited from Wordpress
- Name: wordpresser
- Code repo: https://github.com/okfn/ckanext-wordpresser
- PyPI: git+https://github.com/okfn/ckanext-wordpresser#ckanext-workpresser
Stats - Statistics for CKAN
ckanext-stats is included in CKAN core distribution for CKAN > 1.5.1
- Name: stats
- Status: Production
- Maintainer: CKAN Team
- Documentation: https://github.com/okfn/ckanext-stats (DEPRECATED)
- Code repo: https://github.com/okfn/ckanext-stats (DEPRECATED)
- PyPI: http://pypi.python.org/pypi/ckanext-storage (DEPRECATED)
Storage - Integrated File Storage for CKAN
- Name: storage
- Documentation: http://packages.python.org/ckanext-storage/
- Code repo: https://github.com/okfn/ckanext-storage
- PyPI: http://pypi.python.org/pypi/ckanext-storage
- Status: Production
- Maintainer: CKAN Team
Issues Extension - Issue and Todo Management for CKAN
(Used to be called ckanext-todo)
- Name: issues
- Repo: http://github.com/okfn/ckanext-issues
- Status: Beta
- Maintainer: John Glover
Metadata Harvester
This extension provides a common framework for harvesting dataset information (metadata) into a CKAN instance from other sources. It provides a command line and web interface to manage harvesting sources and jobs. It is also easily extensible to include new harvesters.
- Name: harvest
- Repo: https://github.com/okfn/ckanext-harvest
- Docs: https://github.com/okfn/ckanext-harvest (README)
- Status: Production
- Maintainer: Adria Mercader
Geospatial Capabilities
This extension contains plugins that add geospatial capabilities to CKAN. The following plugins are currently available: Automatic geo-indexing and spatial API call (spatial_query); Map widget showing a package extent (dataset_extent_map); A Web Map Service (WMS) previewer (wms_preview).
- Name: spatial
- Repo: https://github.com/okfn/ckanext-spatial
- Maintainer: Adria Mercader
- Official Extension: Yes
- Docs: http://wiki.ckan.org/Geospatial_Capabilities
- Status: Production
Not Recently Tested
Deliverance proxying for remote content
- Name: deliverance
- State: alpha
- Maintained: privately, Friedrich Lindenberg <friedrich.lindenberg@okfn.org>
- Code: https://github.com/okfn/ckanext-deliverance
- Pip: -e git+https://github.com/okfn/ckanext-deliverance#egg=ckanext-deliverance
- Use: explained in README.md
Deliverance is an HTTP proxy that can be used to request and render web pages from an external site (e.g. a CMS like Drupal, Wordpress). Pages will be loaded from the CMS url, re-styled according to a XML specification and delivered to the end user. This allows CKAN to provide CMS-managed content pages without the need to include CMS functionality.
Deprecated
Data API
Provides API for getting raw data from CKAN resources
- Name: ckanext-dataapi
- Code repo: deleted
- PyPI: http://pypi.python.org/pypi/ckanext-dataapi
Use:
CKAN_URL/api/data/RESOURCE_ID?PARAMETERS
Currently supported resources: XLS, CSV. For more information and for list of available PARAMETERS, please refer to the dataproxy documentation
Downloading Archiver
Deprecated in favour of of the QA extension which includes this functionality
- Name: archiver
- State: broken
- Maintained: privately, Friedrich Lindenberg <friedrich.lindenberg@okfn.org>
- Code: https://bitbucket.org/pudo/ckanextarchive/overview
- Use: requires ckanext-queue, worker plugin registers as entry point
Background worker that will download any packages on a CKAN instance to an OFS bucket.