Warning: This page has not been updated in over over a year and may be outdated or deprecated.
development:architecture:directory_layout
This is an old revision of the document!
Table of Contents
VuFind 2.x Directory Layout
This page refers to VuFind 2.x; for earlier versions, see VuFind 1.x Directory Layout.
Top-Level Layout
- config
Application-level configurations - data
Storage for application-level data (rarely used) - harvest
Tools for harvesting metadata - import
Tools for importing metadata - languages
Default language files - local
Default local settings directory (other paths may be configured) - module
Core code, divided into modules; for details, see anatomy of a module below.- VuFind
Core VuFind code - VuFindConsole
Console-specific code used for command-line tools - VuFindLocalTemplate
Template for building a local module to override VuFind defaults; this is copied by install.php and should not be modified directly
- public
Web root – should only contain index.php; other files are made accessible via Apache configuration - solr
Solr index - tests
Test suite - themes
Templates, CSS, Javascript, images and other theme-specific resources; for details, see anatomy of a theme below.- blueprint
Default desktop theme - jquerymobile
Default mobile theme - root
Base theme containing shared resources needed by all other themes
- util
Command line utilities- 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. - index_reserves.php
Build a Solr index for course reserves. - 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.
- vendor
Third-party code - build.xml
Phing build script (used for development/continuous integration) - import-*.*
Import automation scripts - index-alphabetic-browse.*
AlphaBrowse index generation script - install.php
VuFind installer - vufind.sh
VuFind startup/shutdown script
Anatomy of a Module
Every module has the same basic structure.
- config
Configuration directory defining module-specific resources - sql
Module-specific SQL definitions (not commonly used) - src
Module-specific PHP code, stored in directories matching PHP namespace structure - tests
Module-specific tests (not always used) - xsl
Module-specific XSLT code (not commonly used) - Module.php
Class for loading and bootstrapping module
Anatomy of a Theme
Every theme has the same basic structure.
- css
CSS resources (exposed to public access) - images
Image resources (exposed to public access) - js
Javascript resources (exposed to public access) - templates
PHP templates for rendering HTML - theme.ini
Theme configuration file
development/architecture/directory_layout.1347646611.txt.gz · Last modified: 2014/06/13 13:13 (external edit)