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.
legacy:vufind_1.x_developer_manual:directory_layout

This is an old revision of the document!


VuFind Directory Layout

  • import
    The import directory contains the import tool for importing MARC records. This directory will also contain other command line import tools as they are developed.
  • solr
    The solr directory contains all Solr related items including Jetty and the data directories for the indexes.
    * Note: Soon VuFind will have multiple indexes to allow for non bibliographic data.
  • tests
    Contains the test suite (see Unit Tests for more details).
  • util
    Contains PHP utility scripts designed to be run from the command line.
    • dedupe.php
      Remove duplicate lines from a text file.
    • delete.php
      Remove all of the records in a specified MARC file from the Solr index.
    • expire_searches.php
      Remove unwanted saved searches from the database.
    • optimize.php
      Optimize the Solr index.
    • sitemap.php
      Generate a sitemap for use with search engines.
    • suppressed.php
      Delete all currently suppressed catalog records from the Solr index.
    • util.inc.php
      Set up the environment so that utilities can call standard VuFind support code.
  • web
    • conf
      This directory contains VuFind's configuration files.
    • Crypt
      This directory contains encryption-related support classes.
    • Drivers
      This directory holds driver classes that allow VuFind to interface with a variety of third-party library systems. See Building an ILS Driver for more details.
    • File
      This directory contains utility classes for dealing with specific file formats (i.e. MARC).
    • images
      Images used by VuFind (additional images may be found in the themes folders below).
    • interface
      • plugins
        This directory holds custom Smarty plugins (see Building a Plugin).
      • themes
        This directory holds a number of themes which are collections of template files in directories that are named for the service or “module” they display. Each theme also contains a css directory. Currently, there are two themes: classic (the old look) and default (the new look).
    • js
      Javascript support code.
    • lang
      This directory holds translation mappings for various languages.
    • services
      This directory contains the modules of VuFind. Each “module” is a directory containing a series of Classes. Each class has its own PHP file of the same name. The “action” classes get called by the index.php page in the web directory based on the URL. The URL rewriting is processed by the mod_rewrite rules located in the .htaccess file in the web directory. Classes process data and pass details into the Smarty templates in the interface directory for presentation (in early versions of VuFind, the templates were in the services directory). See Building a Module for more details.
    • sys
      This directory contains system-level support classes shared by various modules in the services directory. See the System Classes page for more details.
    • xsl
      XSL support code.
    • .htaccess
    • Action.php
      Base class used by the modules in the services directory.
    • bookcover.php
      This module is used to output thumbnail images for book covers.
    • CatalogConnection.php
      Interface class that wraps around the ILS drivers in the Drivers directory.
    • index.php
      Top-level logic that every VuFind page runs through.
  • install
    This is the initial install bash script that sets up the mysql database as well as the PEAR and Smarty libraries. We hope to expand this to include more setup functionality. This could be replaced by Ant.
  • mysql.sql
    The mysql create file
  • vufind.sh
    The bash script to start and stop Jetty
legacy/vufind_1.x_developer_manual/directory_layout.1292337990.txt.gz · Last modified: 2014/06/13 13:12 (external edit)