How to Develop for KnowledgeTree
From KnowledgeTree Document Management Made Simple
Contents |
Environment
- Programming language: PHP
- Uses the PEAR DB classes, but abstracts this behind its own DBUtil class (lib/database/dbutil.inc). Currently, KnowledgeTree provides only install and upgrade scripts for MySQL.
- Uses the Smarty templating languages, but abstracts this behind its own templating abstraction (lib/templating/templating.inc.php and lib/templating/template.inc.php, and lib/templating/smartytemplate.inc.php).
Architecture
See the KnowledgeTree Architecture diagram - a graphical overview of KnowledgeTree's architectural roadmap.
Datamodel
See the KnowledgeTree Datamodel representation - a table format overview of the core document and folder structure.
KnowledgeTree Coding Basics
This section provides information on the basics of coding in the KnowledgeTree environment, including editing templates, i18n issues, and writing new dispatchers:
- Dispatchers - incomplete
- Templating - an overview to working with the smarty templating engine in KnowledgeTree
- KTEntity
- Errors - what to do and how to use them properly.
- Developing i18n support - discusses Internationalization and the process of providing support for multiple locales, with Translation as the primary focus for KnowledgeTree.
- Login process - a guide to how KnowledgeTree handles login, including a discussion on interceptors
- Major API Components
Developing plugins
This section provides links to pages on the Wiki where you can find more information on writing Plugins for KnowledgeTree:
- Plugin Registration - incomplete.
- Workflow Triggers
- Custom Database Tables
User Interface Development
All those pretty little things ...
- Form Machinery
See Also: UI Development
New Developments
KnowledgeTree Components Needing Community Attention
Additional Resources
- KnowledgeTree Community Forums: This is where you can discuss development issues with other developers
- IRC Channel: For more 'realtime' discussions, you can find us on #knowledgetree on irc.freenode.net.
- For language packs and plugins, see the KnowledgeTree Forge
del.icio.us
reddit

