title: Docs
tags: docs introduction

This is the main documentation hub for TiddlyWiki.

! Guides

How to get things done with TiddlyWiki:

* [[Getting started with TiddlyWiki in the browser]]
* [[Getting started with TiddlyWiki under node.js]]
* [[Getting involved in TiddlyWiki development]]

! Concepts

The core concepts underlying TiddlyWiki are:

* [[Tiddlers]]
* [[Wiki]]
* TiddlyWiki
* WikiText

The machinery tying those concepts together includes:

* TiddlerFilters
* TiddlerFields
* ContentType
* ShadowTiddlers
* TiddlerModules

! Wiki Text Rules

These are the individual rules that make up WikiText:

* ClassBlockWikiText
* CodeBlockWikiText
* CodeRunWikiText
* DashWikiText
* EmphasisWikiText
* EntityWikiText
* ExternalLinkWikiText
* HeadingWikiText
* HtmlWikiText
* ImageWikiText
* ListWikiText
* MacroWikiText
* PrettyLinkWikiText
* RuleWikiText
* StyleBlockWikiText
* TypedBlockWikiText
* WikiLinkWikiText

! Macros

Macros give WikiText dynamic functionality:

* ViewMacro
* EditMacro
* StoryMacro
* TiddlerMacro
* ButtonMacro
* CommentMacro
* DownloadMacro
* EchoMacro
* ImageMacro
* IncludeMacro
* LinkMacro
* ListMacro
* VideoMacro
* SliderMacro
* ZoomerMacro
* ChooserMacro
* TagsMacro
* ColorMacro

! Commands

When run under node.js, TiddlyWiki supports a [[command line interface|Getting started with TiddlyWiki under node.js]] with the following built-in commands:

* DumpCommand
* LoadCommand
* SaveTiddlerCommand
* ServerCommand
* VerboseCommand
* VersionCommand
* WikiTestCommand

! 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
* StartupModules
* StoryViewModules
* TiddlerDeserializerModules
* TiddlerFieldModules
* TiddlerMethodModules
* TiddlerSerializerModules
* 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:

! Miscellaneous

* ReportingBugs
* JeremyRuston (aka [[Jermolene]])
* FederatialLimited
* [[History]]
* [[Acknowledgements]]
