Extension TerriaJS


Extension Basics

Title
TerriaJS
Name
ckanext-terriajs
Type
Public extension
Description
Extensible and configurable TerriaJS view plugin for CKAN providing JSON schema validation, dynamic models, and automatic view creation for WMS, MVT, and CSV formats.
CKAN versions
Download-Url (zip)
Last commit
4 years ago (2021-12-09 00:00:00)
Url to repo
Category
Visualization & Analytics


Background Infos

Description (long)
Show details

ckanext-terriajs

The TerriaJS view plugin provides an extensible and highly configurable set of views ready for TerriaJS.

It leverages JSON schema to facilitate and speed up the configurations editing for each configured type (csv, wms, wmts, etc). The plugin also presents an embedded overview of the result showing the layer into an Iframe.

Key Features

  • JSON + JSON-SCHEMA based validation (frontend with json-editor, ACE editor, AJV validation; backend with jsonschema Python library)
  • Dynamic models (lazy-loaded) using special terriajs-group type to dynamically resolve existing views
  • Jinja2 template interpolation for automatic view creation based on resource format
  • Reference integrity checking for terriajs-group to connected views
  • Automatic view creation for wms, mvt, csv formats out of the box
  • Multiple API endpoints: /terriajs/describe, /terriajs/search, /terriajs/schema/<filename>, /terriajs/config/[<enabled|disabled>/]<uuid>.json, /terriajs/item/[<enabled|disabled>/]<uuid>.json
  • Blueprint endpoints for read-only access
  • No additional database tables (uses Postgres + JSON approach)

Requirements

  • CKAN 2.8+
  • TerriaJS 7
  • PostgreSQL > 9.4
  • jsonschema (Python)

Configuration

  1. Copy type-mapping.json: cp ./type-mapping.json /etc/ckan/default/terriajs-type-mapping.json
  2. Enable plugin: ckan.plugins = terriajs ...
  3. Set config: ckanext.terriajs.url = http://localhost:8080 ckanext.terriajs.schema.type_mapping = /etc/ckan/default/terriajs-type-mapping.json

License

AGPL-3.0

Version
0.0.1
Version release date
(not set)
Contact name
Carlo Cancellieri
Contakt email
Contact Url
(not set)


Installation Guide

Configuration hints

Requires TerriaJS 7 and PostgreSQL > 9.4. Does not create additional database tables.

Plugins to configure (ckan.ini)
terriajs
CKAN Settings (ckan.ini)
# ckanext.terriajs.url = http://localhost:8080
# ckanext.terriajs.schema.type_mapping = /etc/ckan/default/terriajs-type-mapping.json
DB migration to be executed
(not set)
<< back to Extensions