Warning: This page has not been updated in over over a year and may be outdated or deprecated.
development
This is an old revision of the document!
Table of Contents
VuFind Developer Manual
This page covers development of VuFind 2.x and later; for earlier versions, see the VuFind 1.x Developer Manual.
Coding Standards
- PHP Code - PEAR Coding Standards
For help with standards compliance, see the recommended tools page.
Development Tools
- Git - Notes on aiding development with version tracking.
- Recommended Tools - Suggestions for successful VuFind development.
Architecture Notes
- Cookies - Notes on VuFind's use of cookies.
- Data Model / Key Concepts - Key ideas in the VuFind 2.0 architecture.
- Record Driver Method Master List - A reference to get methods used by record drivers.
-
General Information
- Why VuFind 2.0? - Some of the reasons for a new major release.
- Customizing VuFind 2.0 - How to change VuFind's behavior.
- Zend Framework 2 - Information about VuFind 2.0's underlying framework.
Plugins
VuFind features integration points for a variety of plugins. The general_plugin_information page describes general principles for building plugins. The list below offers specifics for each type of plugin.
- Authentication Handlers - Custom login functionality
- Autosuggesters - Sources for autocomplete suggestions
- Database Gateways - Interfacing with database tables and rows
- Hierarchy Components - Support tools for hierarchies and collections
- ILS Drivers - Interfacing with integrated library systems
- Link Resolver Drivers - Interfacing with OpenURL resolvers for embedded results
- Permission Provider Plugins - Permission providers are part of VuFind's authorization mechanism.
- Recommendation Modules - Providing context-sensitive suggestions in search results
- Record Drivers - Representing metadata in an object format recognized by VuFind
- Record Tabs - Objects representing tabs on the record view page
- Related Records Modules - Providing context-sensitive suggestions in record views
- Session Handlers - Custom PHP session storage mechanisms
- Statistics Drivers - Modules for gathering search/record view statistics
How-Tos
- Adding Facets - How to add a new facet to searches.
- Authorization - Information on how VuFind handles user authorization.
- Building an ILS Driver - How to connect to your Integrated Library System.
- Building a Controller - How to add new pages and functionality to the interface.
- Building a View Helper - How to add custom behavior to templates.
- Building Custom Autosuggestions - How to customize VuFind's autocomplete functionality.
- Connecting a New External Data Source - Building a VuFind module for a new data source that can't be indexed directly into VuFind (i.e. third-party API)
- Customizing the User Interface - Basics on customizing the presentation layer of VuFind.
- Displaying a Custom Field - How to make a new field visible in the VuFind environment.
- Displaying a New Search Field - How to add search fields to the VuFind web interface
- Supporting a New Citation Style - How to add a citation style to VuFind.
- Supporting a New Export Format - How to add support to export metadata from VuFind to files/third-party systems.
- Supporting a New Metadata Format - How to add a record driver and build an importer for non-MARC records.
Planning
- GitHub pull requests - A place to view and discuss work in progress on new features.
- JIRA - VuFind's issue tracker.
Testing
- Continuous Integration - Notes on project-level VuFind testing.
- Testing Checklist - Feature list helpful for validating functionality of VuFind code.
- Unit Tests - Notes on building and running tests for VuFind components.
External Resources
- Working with MARC - This Code4Lib page offers useful resources for dealing with MARC records.
development.1449688220.txt.gz · Last modified: 2015/12/09 19:10 by demiankatz