Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Scripto is an open source documentary transcription tool library written in PHP.
Tree: 51c7b8d420

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.



© 2010-2011, Center for History and New Media
License: GNU GPL v3

Scripto is an open source documentary transcription tool written in PHP. It features a lightweight library that interfaces MediaWiki and potentially any content management system that serves document files. MediaWiki is a good choice for the transcription database for several reasons:

  • It is the most popular wiki application and has a sizable and active developer community;
  • Wiki markup is relatively easy to learn and there are useful WYSIWYG editors available;
  • It offers helpful features, such as discussion pages and user administration;
  • It comes with a powerful, fully-featured API.


  • PHP 5.2.4+
  • Zend Framework 1.10+
  • MediaWiki 1.15.4+
  • Custom adapter interface to (and possibly an API for) the external CMS


  • Download and install MediaWiki;
  • Download the Zend Framework library;
  • Download the Scripto library, set the configuration, and use the Scripto library API to build your documentary transcription application.

Suggested Configuration and Setup

Here's a basic configuration:


// Path to directory containing Zend Framework, from root.
define('ZEND_PATH', '');

// Path to directory containing the Scripto library, from root.
define('SCRIPTO_PATH', '');

// URL to the MediaWiki installation API.
define('MEDIAWIKI_API_URL', '');

// Name of the MediaWiki database.
define('MEDIAWIKI_DB_NAME', '');

// Set the include path to Zend and Scripto libraries.
               . PATH_SEPARATOR . ZEND_PATH 
               . PATH_SEPARATOR . SCRIPTO_PATH);

// Set the Scripto object.
require_once 'Scripto.php';
require_once 'Scripto/Adapter/Example.php';
$scripto = new Scripto(new Scripto_Adapter_Example, 
                       array('api_url' => MEDIAWIKI_API_URL, 
                             'db_name' => MEDIAWIKI_DB_NAME));

// Set the current document object.
$doc = $scripto->getDocument($_REQUEST['documentId']);

// Set the current document page.

See the examples/ directory for more suggestions on configuration, setup, layout, and styles.

Something went wrong with that request. Please try again.