Difference between revisions of "Developer Documentation"

From PKP Wiki
Jump to: navigation, search
(Getting Started)
(14 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
== Getting Started ==
 
== Getting Started ==
 
[[Information for Developers]] -- For community contributors. Includes how to  identify existing bugs, contribute code, and set up your development environment.
 
[[Information for Developers]] -- For community contributors. Includes how to  identify existing bugs, contribute code, and set up your development environment.
 +
 +
[[Installation: Multiple OJS & mOJO]] -- For sysadmins or developers. How to install an independent OJS for each magazine and manage all of them from your command shell.
 +
 +
[[Potential issues with RedHat installation]]  -- For sysadmins or developers. Some information on RedHat/CentOS installation not covered by the default documentation.
  
 
== Development Roadmap and Strategy ==
 
== Development Roadmap and Strategy ==
Line 10: Line 14:
  
 
== Working with Git ==
 
== Working with Git ==
[[HOW-TO check out PKP applications from git]]
+
 
 +
[[Github Documentation for PKP Contributors]]
  
 
[[Frequent git use cases]]
 
[[Frequent git use cases]]
Line 36: Line 41:
  
 
[[Localization]]
 
[[Localization]]
 +
 +
[[Front-end Cookbook]]
  
 
== Testing ==
 
== Testing ==
[[Unit Tests]]
+
[[Unit Tests]] are developer-centric code tests.
  
[[Web Tests]]
+
[[Integration Testing]] is automated testing of the web interface.
  
[[Non-technical Testing]]
+
[[User Tests]] are tests performed by live humans.
  
== Usability/Web Design ==
+
[[Integration Testing Use Cases]] lists and describes the specific tests run in Integration Testing.
[[PKP Library Widgets]]
+
  
[[Open Monograph Press]]
+
[[Test Data Creation Suite]] is a suite of Selenium-based tests that create a basic data set for testing, presentations and workshops, etc.
 +
 
 +
== Usability/Web Design ==
 +
* [[OJS UI/UX]]
 +
* [[OMP UI/UX]]
 +
* [[PKPWAL UI/UX]]
 +
* [[PKP Library Widgets]]
 +
* [[Open Monograph Press]]
  
== Current Development Documentation ==
+
== Current Development ==
[[Migration issues]] -- PKP is working to integrate the new features of OMP -- which was released in 2012 and included a fundamental overhaul of the PKP code -- into our other applications. This page describes that process so that it can be used as the basis for future backporting.
+
[[Migration issues]] -- notes on how to backport the new features that were introduced in OMP into other PKP applications

Revision as of 01:44, 26 June 2014

Getting Started

Information for Developers -- For community contributors. Includes how to identify existing bugs, contribute code, and set up your development environment.

Installation: Multiple OJS & mOJO -- For sysadmins or developers. How to install an independent OJS for each magazine and manage all of them from your command shell.

Potential issues with RedHat installation -- For sysadmins or developers. Some information on RedHat/CentOS installation not covered by the default documentation.

Development Roadmap and Strategy

General Software Milestones -- a rough guide to upcoming PKP software releases for all products

Development Cycle -- description of the pattern PKP follows in terms of releases and branches

PKP WAL Roadmap -- roadmap for the PKP Web Application Library, a shared codebase common to all PKP applications

Working with Git

Github Documentation for PKP Contributors

Frequent git use cases

Git sub-module tutorial

Differences between CVS and git for PKP devs

Code Design

JavaScript coding conventions -- the JS coding conventions that PKP uses.

JavaScript widget controllers -- description and explanation of the standard PKP javascript widget controllers that are implemented throughout the codebase.

Router Architecture

AJAX framework

Authorization Framework

Metadata and Filter Framework

Data Access Objects (DAO)

Third Party Library Integration Policy

Localization

Front-end Cookbook

Testing

Unit Tests are developer-centric code tests.

Integration Testing is automated testing of the web interface.

User Tests are tests performed by live humans.

Integration Testing Use Cases lists and describes the specific tests run in Integration Testing.

Test Data Creation Suite is a suite of Selenium-based tests that create a basic data set for testing, presentations and workshops, etc.

Usability/Web Design

Current Development

Migration issues -- notes on how to backport the new features that were introduced in OMP into other PKP applications