Skip to content


Kerko was inspired by prior work accomplished by Whisky Echo Bravo on two projects:

In 2019, Whisky Echo Bravo was asked to work on another similar project. That made it clear that a general solution would benefit many organizations. However, software from the prior projects had to be rewritten in order to be more adaptable to a variety of needs. That led to Kerko, whose initial development was made possible through the following project:

Since then, Kerko has continued to evolve, thanks to work by Whisky Echo Bravo and other contributors, often through funding provided by organizations needing new features or customizations of Kerko.

Design choices

Here are some of the design choices that have guided the development of Kerko so far:

  • Do not build back-end software. Let Zotero manage the data.
  • Allow Kerko to integrate into richer web applications.
  • Only provide features that pertain to the exploration of a bibliography. Other features, even when they are common to many web sites, do not belong to Kerko and should be left to the applications to implement.
  • Use a lightweight framework to avoid carrying many features that are not needed by Kerko (Flask was selected for this reason).
  • Use pure Python dependencies to keep installation and deployment simple (Hence the use of Whoosh for search, for example, instead of Elasticsearch or Solr).
  • Use a classic server-side rendering architecture. Keep it simple and avoid asset management when possible.


The name Zotero reportedly derives from the Albanian word zotëroj, which means "to learn something extremely well, that is to master or acquire a skill in learning" (Source: Mark Dingemanse, 2008, Etymology of Zotero).

The name Kerko is a nod to Zotero as it takes a similar etymological route: it derives from the Albanian word kërkoj, which means "to ask, to request, to seek, to look for, to demand, to search" and seems fit to describe a search tool.