r35 - 21 Mar 2007 - 00:44:59 - GordonTetlowYou are here: TWiki >  Plugins Web > ReadmeFirst
Tags:
dev_essential 2 Add my vote for this tag, development 1 Add my vote for this tag, process 1 Add my vote for this tag, twiki_community 1 Add my vote for this tag, , create new tag

Introduction

TWiki has the following types of TWikiExtensions:

  • A PluginPackage allows authors to add certain kinds of new behaviour without requiring changes to the core TWiki code. The main way this is done is by plugins writing handlers that are called from the TWiki core at specified points in the core functionality.
  • A SkinPackage changes the visual appearance of pages, but leaves the topic contents exactly the same. For example the Printable link at the bottom of every page here on TWiki.org uses the PrintSkin to render the topic in a way more suitable for printing.
  • An AddOnPackage implements a script that that goes into the bin directory and can be called from a TWiki topic. In contrast, a Tool is designed to go into the tools directory and can only be called from the shell. Most tools are written by core developers.
  • A ContribPackage is reusable code that is available for use by other extensions. Its functionality is made available by using the package name (via use) in your perl code.

Each released TWikiExtension -- that is, each stable release -- is zipped and attached to its homepage in this web, either manually or through SVN. Some extensions will work on any version of TWiki; some will only work with specified ones. The latest "bleeding-edge" version of the TWiki extension may reside in the DEVELOP SVN repository and is only available that way.

Developers:

  • Learn how to create and publish Plugins.
  • Please note the ModificationPolicy! If it says PleaseFeelFreeToModify then anyone (including YOU) can release the new version - don't just attach patches! Otherwise, please check with the authors.
  • Please review the PluginsApiPolicies that describes a stable API that you can rely on. This is important! Not following these policies may lead to your plugin breaking. It's in the interest of everyone to try to ensure reliable plugins. This will also help you from having to do extra recoding in the future.
  • TWiki 4 (DakarRelease) has an enhanced Plugins API, and some functions have been deprecated. If at all possible, please consider keeping your plugin compatible with Cairo and Dakar codebase. HandlingCairoDakarPluginDifferences lists the differences in the API, and suggestions on how to maintain one Plugin codebase.
  • We have moved most PluginsInSubversion. Get the details there if you have developed an extension and you would like to maintain it in SVN. See also in DakarDevelopersPleaseNote how to use the BuildContrib for easy plugin install/uninstall.
    • Note: You do not have to use subversion and BuildContrib to write or maintain your plugin: you can publish extensions by attaching the ZIP file to its homepage in this web.
  • NEW: Internationalise your plugin through InternationalisationGuidelines - simple changes to make your plugin work with international characters (part of I18N), opening it up to much wider user base across the world.

-- Contributors: AndreaSterbini, CrawfordCurrie, MattWilkie, PeterThoeny, MeredithLesly

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r35 < r34 < r33 < r32 < r31 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback SourceForge.net Logo