# TiddlyWiki

TiddlyWiki is a personal wiki and a non-linear notebook for organising and sharing complex information. It is an open-source single page application wiki in the form of a single HTML file that includes CSS, JavaScript, embedded files such as images, and the text content. It is designed to be easy to customize and re-shape depending on application. It facilitates re-use of content by dividing it into small pieces called Tiddlers.
TiddlyWiki is an unusual example of a practical quine. The idea of producing a copy of its own source code lies at the heart of TiddlyWiki's ability to independently save changes to itself. Quine is also the name of the unofficial TiddlyWiki application for iPhone/iPad.

## Applications

TiddlyWiki is designed for customization and to be shaped according to users' specific needs, perhaps comparable to a high-level programming language. As such, it can be used for a wide and knowledge domain-agnostic range of special applications. Examples include niche note-taking applications, to-do lists, presentations, collections, authoring tools, personal databases, recipe collections, etc.
Although there are many TiddlyWiki documents on the Web, the majority of TiddlyWikis reside on personal computers or in the cloud, or are exchanged by email, in a manner similar to word processing documents and spreadsheets. As a single HTML file, or saved as an HTA file in Microsoft Windows (allowing corporate IE lockdown to be bypassed), TiddlyWiki can be useful in corporate environments where red tape or IT resources might prevent the use of a wiki that requires a more complicated installation.
TiddlyWiki has been used as a software framework to build specialisations such as the following:
* Socialtext used TiddlyWiki to add offline functionality.

## Tiddlers

TiddlyWiki introduces the division of content into its "smallest, semantically meaningful, components", referred to as tiddlers. Each tiddler is stored inside an HTML division that contains the source text and meta data in wiki markup. The purpose with this division is to enable easy re-use of content for different narratives and in different contexts.
For example, this section ("Tiddlers") could be a tiddler. In the TiddlyWiki user interface it would appear as it appears here but as a separate "note" visually distinct from other tiddlers.
The underlying HTML source code (which is not typically directly viewed or modified by end users) would be something like:
This same "tiddler" could then be reused in other contexts in the wiki.

## Plugins

In addition to containing text, a tiddler can be a plugin with additional JavaScript and CSS to extend TiddlyWiki. As a result, TiddlyWiki is used in a wide variety of adaptations and uses beyond that of a personal wiki.
Popular community plugins include interactive graph visualization or mind maps with TiddlyMap, project management with Projectify, integration with the spaced-repetition-flashcards tool Anki with TiddlyRemember, mathematical typesetting based on KaTeX or MathJax, adding a Disqus-based comment system, and enabling standard Markdown markup.

## File saving

TiddlyWiki may be saved as a single html file containing both the data (tiddlers) and the application (wiki), or the data can be saved on a per tiddler basis in text files (via extensions).
A TiddlyWiki opened from a file URI may save changes made back to the original file using one of the following techniques:
* the Microsoft ActiveX FileSystemObject for Internet Explorer
* TiddlySaver Java applet to extend Safari, Opera, Chrome/Chromium, and other browsers. Requires the Java runtime.
* Two techniques were developed for the Firefox browser:
** Mozilla File I/O under the control of the UniversalXPConnect per-file preferences. That functionality was later removed from Firefox.
** The TiddlyFox add-on for Firefox uses the Firefox SDK's simple-storage API. The add-on stopped working with Firefox around version 57 in 2017 which does not support the API.

## History

* The first version of TiddlyWiki was released by Jeremy Ruston in September 2004.
* BT Group bought Osmosoft in 2007 appointing Ruston as BT's "Head of Open Source Innovation".
* TiddlyWiki was selected as one of the Top 100 Tools for 2007 and 2008 by the Centre for Learning & Performance Technologies.
* In November 2011, Jeremy Ruston announced his departure from Osmosoft and commitment to continue development on TiddlyWiki.
* In December 2013 TiddlyWiki5 was released. It is a total rebuild of the original TiddlyWiki, based on HTML5 and with many significant improvements from lessons learnt over the years with the original TiddlyWiki. The original TiddlyWiki has come to be called TiddlyWiki Classic.
* 2023-08: Release of
** TWv5.3.0 the newest "Stable release", and
** TWv.5.3.1 (trivial backward compatibility patches)

## License

TiddlyWiki is free and open source software and is distributed under the terms of the BSD-3-Clause license.
The copyright of TiddlyWiki is held in trust by UnaMesa, a non-profit organization.