1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-11-04 17:16:18 +00:00
TiddlyWiki5/editions/dev/tiddlers/from tw5.com/Developing plugins using Node.js and GitHub.tid
Jermolene 1a95ec9ac4 Introduce dev edition
Thanks to @cjrk and @cheigele for contributing their developer docs
(which can be found at https://github.com/cjrk/saa-tw).

By the way, I plan to remove the “creator” and “modifier” fields but
will keep a prominent acknowledgement for your contributions.
2014-09-10 16:53:32 +01:00

119 lines
2.7 KiB
Plaintext

created: 20140320055936611
modified: 20140908152942119
tags: howto
title: Developing plugins using Node.js and GitHub
type: text/vnd.tiddlywiki
The most practical way to develop plugins is to use Node.js with the tiddlywiki5 repository to build your plugins, and to use ~GitHub to manage you files.
!Step by step
!!1. Setup your development environment
First read http://tiddlywiki.com/static/PluginMechanism.html.
Install Git from http://git-scm.com/downloads
Install Node.js from http://nodejs.org/
!!2. Create a new blank repository on ~GitHub
Hint: ~GitHub repositories cannot be grouped together into directories, so it is only possible to group by using a naming scheme, e.g. use 'TW5-' as a name prefix with tiddlywiki5 projects to group them together.
Go to https://github.com/ and create new a repository 'pluginname' - choose to add a readme file.
!!3. Setup a working environment
Choose a location in your file system (eg TW5) for you plugin project; issue commands to:
--create the directory--
```
mkdir TW5
```
--make a local read-only copy of the tiddlywiki5 repository--
```
git clone https://github.com/Jermolene/TiddlyWiki5.git TW5
```
--make a directory for your plugin--
```
cd TW5
cd plugins
mkdir yourname
cd yourname
mkdir pluginname
```
--make a local copy of you plugin repository--
```
git clone https://github.com/yourgithub/pluginname.git pluginname
```
--go to your files--
```
cd pluginname
```
Create the file plugin.info with content:
```
{
"title": "$:/plugins/yourgithub/pluginname",
"description": "summary of the plugin's purpose",
"author": "yourname",
"version": "0.0.1",
"core-version": ">=5.0.8",
"source": "https://github.com/yourgithub/pluginname",
"plugin-type": "plugin"
}
```
!!4. Create the files for you plugin
For example files see the plugins in the tiddlywiki5 repository i.e. those located at plugins/tiddlywiki/ - Note in particular that files need to contain information that is used to tell tiddlywiki the name of the tiddler that is to be used in the tiddlywiki in place of the name of the file within the file system.
!!5. Build your files into a tiddlywiki
Modify editions/tw5.com/tiddlywiki.info to include a reference to your plugin directory, i.e. find `"plugins": [ ` and add `"yourname/pluginname"`.
From the TW5 directory issue command
```
./bin/qbld.sh
```
the resultant file (index.html) will be placed in the build directory, the default build directory is `../jermolene.github.com` relative to TW5/
!!6. Save your work on ~GitHub
From `plugins/yourname/pluginname/` issue commands to:
--add all files--
```
git add -A
```
--commit to your local repository---
```
git commit -am "something meaningful about this check in"
```
--copy local changes to github--
```
git push
```