The CKAN Community announced today the release of the latest version of CKAN: 2.11. This new version ships with a lot of improvements thanks to the great work of the Tech Team and dozens of contributors. In this post, I would like to focus on what makes us really excited: cementing the Hypermedia Approach of its architecture.
The Open Knowledge Foundation created CKAN back in 2007 and since then it has always followed a hypermedia approach. Its architecture didn’t change much in the last 17 years and it is based on the traditional 3-Tier model, currently powered by Flask, SQLAlchemy, Jinja2, Javascript, HTML and CSS. Since its inception, and more often in the past 5 years, it has received several proposals to “modernise” its architecture: migrating to microservices, reworking its frontend in newer technologies (react, vue, etc) and decoupling backend and front end.
During the development of CKAN 2.11 an idea was proposed to decouple its front-end from its backend, which surfaced a lot of interesting points about the benefits of our current setup and how introducing a decoupled solution could lead to more complexity that we can handle as an open source community.
To settle the debate, the Tech Team of CKAN proposed an Hypothesis: embracing an hypermedia approach could lead to an easier transition to a richer UX. The idea was to test out if integrating HTMX to CKAN would give us more tools to improve our UI. This hypothesis was successfully proven correct given that it took just a couple of weeks of volunteer work to integrate HTMX, start refactoring our UI, document the new capacity and present it in the tech meeting. This integration was soon followed by a Pull Request from a contributor to improve other parts of the UI using the flamant HTMX integration. Further information on how to work with CKAN/HTMX can be found in the official documentation under the section Creating dynamic user interfaces with HTMX.
We want to congratulate the CKAN Community and the CKAN Tech Team for the new release. We are also happy to see the CKAN community pushing to keep the technology simple and maintainable, proving that software can be built to last.
Looking forward to a bright hypermedia future!