0.28 2018-08-29
        - Introduced Widget based plugin system.
        - Added corpus statistics to VC (hebasta, #25).
        - Introduce center alignment (#63).
        - Change KWIC lines from table style
          to flexbox style (#31).
        - Added doc group reference to VC builder (#62).
        - Show VC name, when a reference is defined.
        - Make close in match view to minimize.
        - Add minimize button to VC.
        - Make unspecified values in VC a button.

0.27 2018-07-23
        - Introduced content blocks to create
          flexible entry lists in the footer
        - Add marker for "cutted" matches.
        - Re-enabled Windows installations.
        - Added buttongroup class.
        - Introduced panel and view system for
          results and matches.
        - Support verbatim keys/values in QueryCreator
          to deal with Koral issue #42.

0.26 2018-04-06
        - Added meta data view.
        - Attach reference line to match bottom.
        - Separate match views and integrate relation menu
          into reference line.
        - Attach querycreator object to annotation table.
        - Update client side dependencies
        - Introduce development mode to client side code.
        - Generalized Poliqarp tutorials and made
          example queries corpus independent.
        - Improve README.
        - Protect login for csrf attacks.
        - Remember app state after login (issue #20).
        - Fixed DRuKoLA annotation assistant data.
        - Fixed server error reporting.
        - Introduced text type in VC creation.
        - Removed "contains" and "containsnot" from
          string type.
        - Added "ne" operation to date meta type.
        - Added Piwik/Matomo integration.

0.25 2018-01-31
        - Make annotation helper configurable.
        - Support multiple prefixes in menus.
        - Show annotation tooltips in table views.
        - Improve result display when JavaScript is disabled.
        - Improve VC creation tool by supporting "blurring".
        - Make tutorial queries localizable for different default corpora.
        - Update dependencies.
        - Add lwc annotations.
        - Adapt support for new relation serialization by Krill.

0.24 2017-11-22
        - Added support for relation visualization.
        - Added support for FCSQL.

0.23 2017-09-20
        - Added query creator tool.
        - Fix visualization of empty contexts in KWIC.
        - Added announcement template.

0.22 2017-06-26
        - Added user authentification using Kustvakts LDAP
          connection.
        - Added X-Forwarded-For.
        - Introduced proxy_prefix as a configuration option.
        - Added support for more rewrite options in js.
        - Fixed legacy sigle parsing.

0.21 2017-02-01
        - Use textSigle for API communication instead of
          {corpus,doc,text}ID.
        - Added alert to hint helper.
        - Improved menu creation.
        - Introduced benchmark system.
        - select elements are now improved menus.
        - Hint menu do not append menus anymore.
        - Updated dependency for bugfixed Localize.
        - Improved readme for localization generation.
        - Fixed select menus to show selected item on
          initialization.
        - Improved compatibility for new text sigles.
        - Fixed alert to not be correctly hidden.
        - Added download of tree visualizations.
        - Do not show multiple identical annotations
          in table view.
        - Added preliminary support for metadata columns.
        - Added preliminary support for multimenus.
        - Updated to more recent version of Mojolicious (7.23).
        
0.20 2016-05-25
        - Improved menu using sliders.
        - Improved menu to make prefixes chooseable,
          even if list can't be filtered.
          - Improve pageup/pagedown behaviour in menus.
          - Fixed multiple bugs in menu.

0.19 2016-04-28
        - Improved datepicker to enter date strings.
        - Improved menus to have fixed length depending
          on entry list.

0.18 2016-02-29
        - Support for dashes in identifiers.
        - Minor changes to the layout.
        - Simplified configuration file.

0.17 2015-11-13
        - Support a larger template cache.
        - Minor style adjustments.

0.16 2015-06-18
        - Update to new KoralQuery API.
          WARNING! This version is no longer compatible
          with old responses of Krill.
        - Introduced new notifications engine.

0.15 2015-05-21
        - Cleanup for GitHub release
        - First realease on GitHub.

0.14 2015-04-15
        - Redesign of JS and Sass assets
        - Introduced RequireJS
        - Introduced VC
        - Improved tutorial
        - Localized client files

0.13 2015-03-10
        - Project name is now "Kalamar"
        - Removed Mr Crabs - introduced Karl
        - Support semantic markup for KWIC
        - Fixed Click-bug in hint-menu
        - Renamed "KorAP" classes to "Kalamar"
        - Support proxy

0.12 2015-01-28
        - Fixed alignment bug

0.11 2014-01-16
        - Fixed paging bug with the async api
        - Disabled Testing feature in tutorial
        - Improved test suite

0.10 2014-12-21
        - Fixed time_exceeded bug
        - Fixed test_port bug for inspection button

0.09 2014-12-03
        - Added new API module

0.08 2014-11-19
        - Added new suggestion module

0.07 2014-11-03
        - Added API-Response view

0.06 2014-09-22
        - Updated certain Notifications and AssetPack plugins
  - Updated pagination plugin

0.05 2014-07-15
        - Improved tutorial support
        - Added Exception mail system

0.04 2014-07-08
        - Fixed template view
        - Preliminary match view
        - Switched to asset pipeline wth sass
        - Added syntax highlighting to JSON
        - Update to Api 0.1

0.03 2014-06-20
        - Added preliminary autocompletion support (freetime project)

0.02 2014-06-17
        - Added morphological tables

0.01 2014-05-31
        - Simplifications:
          Notifications plugin is at
          https://github.com/Akron/Mojolicious-Plugin-Notifications
          All other plugins can be found at CPAN