About Features Downloads Getting Started Documentation Events Support GitHub

Love VuFind®? Consider becoming a financial supporter. Your support helps build a better VuFind®!

Site Tools


Warning: This page has not been updated in over over a year and may be outdated or deprecated.
plug-in_architecture

This is an old revision of the document!


Plug-in Architecture

The Problem

Upgrading and extending VuFind should be easier – especially when it comes time to upgrade to a new version. If we are going to significantly overhaul the VuFind code for a 2.0 release, building a new architecture that makes extensibility cleaner and easier should be a high priority.

The Current State

VuFind currently has several different types of plug-ins (authentication mechanisms, record drivers, ILS drivers, etc., etc.). The concept of theme inheritance is also somewhat related. Where they exist, these mechanisms are useful and powerful, but different mechanisms do not always work in totally consistent ways, and there is not a strong separation between local custom content/configuration and the distributed VuFind core.

Possible Solutions

Feel free to add to this section – the idea is currently to list possible solutions and evaluate advantages and disadvantages.

Use an existing PHP framework?

Since VuFind's initial release, many frameworks have appeared which simplify the construction of a web application. We should look at these and see if any would be suitable for VuFind.

Reconsider Smarty?

Smarty templates are not as popular as they once were, though they may still serve some useful functions within the library environment. We should consider alternatives, especially if it helps make VuFind development less complex and more consistent.

plug-in_architecture.1294768919.txt.gz · Last modified: 2014/06/13 13:13 (external edit)