Installation

Note

DKAN DDEV Add-on is a project containing commands and tools that CivicActions uses for our own implementations and deployments.

For either working on a project locally or working on the core DKAN software and libraries, using a standardized, docker-based local environment is recommended.

Using DDEV with the DKAN DDEV Add-on command-line utility will work on Mac, Linux, or Windows to create containers for the various services needed by DKAN. This will ensure you have the same setup as DKAN’s core developers, and that your environment is very close to that of our continuous integration tools.

Requirements

DKAN is based on Drupal software and – generally – runs anywhere Drupal is supported. For the most common setup, we reccomend:

  • Drupal 10+

  • MySQL: minimum version 5.7.8+ with PDO

  • PHP: minimum version 8.1

  • Apache: minimum version 2.4.7

  • Drush: minimum version 11.x.

  • Node: minimum version 18 (if using the decoupled frontend)

Starting a new DKAN project

Follow the instructions from the DKAN DDEV Add-on documentation: Starting a new project to generate a new Drupal site with DKAN installed on your system.

DKAN DDEV Add-on bases new projects off of a composer project that you can also use to start a project using your own toolset:

composer create-project getdkan/recommended-project my-project

Or simply create a project however you prefer and add a requirement for getdkan/dkan.

Warning

Do note that a bug in Drupal core cron may cause problems with data imports, and applying this patch is highly recommended. The patch will be applied automatically if you use the recommended project.

Adding DKAN into an existing project

If you already have an existing Drupal site, install DKAN with composer. You can find the latest DKAN release here. Composer will download the module and all of the dependencies it requires for the backend.

composer require 'getdkan/dkan'
drush en dkan

To start with some example datasets:

drush en sample_content -y
drush dkan:sample-content:create
drush cron

If you have trouble with generating the sample content, check the Troubleshooting section in the user guide.

Note

Current DKAN development is utilizing a decoupled frontend. To use Drupal’s theme system, there is a dataset twig template available in the metastore module. However, views integration is a roadmap epic with no target date as of yet.