1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-06-13 17:16:48 +00:00
TiddlyWiki5/editions/tw5.com/tiddlers/Internals.tid
2012-12-29 22:29:32 +00:00

90 lines
1.9 KiB
Plaintext

title: Internals
tags: docs introduction dev
This is the developer documentation hub for TiddlyWiki.
! Developer Cookbooks
* [[Using TiddlyWiki for GitHub Pages project documentation]]
* [[Using TiddlyWiki as a component in node.js applications]]
* [[Constructing TiddlyWiki documents in other applications]]
! Internal Objects and Mechanisms
Internally, TiddlyWiki is built on a number of key objects and mechanisms:
* TiddlerObject
* WikiObject
* BootMechanism
* PluginMechanism
* ParsingMechanism
* RenderingMechanism
* DependencyMechanism
* RefreshMechanism
* MacroMechanism
* StoryMechanism
* EditingMechanism
* SavingMechanism
* SyncMechanism
* CommandMechanism
* ConfigMechanism
! Plugin Module Types
TiddlyWiki is built on a [[tiny microkernel|BootMechanism]] with all functionality provided as various types of plugin module:
* CommandModules
* ConfigModules
* EditorModules
* GlobalModules
* LibraryModules
* MacroModules
* ModuleModules
* ParserModules
* SaverModules
* StartupModules
* StoryViewModules
* SyncerModules
* TiddlerDeserializerModules
* TiddlerFieldModules
* TiddlerMethodModules
* TreeNodeModules
* TreeUtilsModules
* UtilsModules
* WikiMethodModules
* WikiTextRuleModules
! Tree Nodes
The ParsingMechanism and the RenderingMechanism use a simple tree structure to represent both parsed WikiText and the HTML DOM structure of rendered content.
* TreeNode
* ElementNode
* EntityNode
* MacroNode
* RawNode
* TextNode
! Other Parsers
TiddlyWiki processes other [[ContentTypes|ContentType]] than WikiText using these parsers:
* OldWikiTextParser
* JsonParser
* ImageParser
* PlainTextParser
* TiddlyTextParser
* JavaScriptParser
! Deserializers
Deserializers are modules that read tiddlers from different text formats:
* RecipeFiles
* TiddlerFiles
* TiddlyWikiFiles
! Serializers
Serializers are modules that convert tiddlers to different text formats: