Skip to content

Instantly share code, notes, and snippets.

@sukima
Last active August 29, 2015 13:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sukima/10941302 to your computer and use it in GitHub Desktop.
Save sukima/10941302 to your computer and use it in GitHub Desktop.
Method for managing a dev and dist editions of a TiddlyWiki site using gulp.js
{
"plugins": [
"tiddlywiki/tiddlyweb",
"tiddlywiki/filesystem",
"tiddlywiki/codemirror",
"tiddlywiki/highlight"
],
"themes": [
"tiddlywiki/vanilla",
"tiddlywiki/snowwhite"
]
}
var gulp = require('gulp');
var gutil = require('gulp-util');
var scp = require('scp');
var tiddlyWiki = require('tiddlywiki').TiddlyWiki;
// ./
// ├── mainsite/
// | ├── tiddlers ~> ../development/tiddlers
// | └── tiddlywiki.info
// └── development/
// └── tiddlywiki.info
var editions = {
dist: './mainsite',
dev: './development'
};
var distOutput = 'index.html';
function runTiddlyWiki() {
var $tw = tiddlyWiki();
$tw.boot.argv = Array.prototype.slice.call(arguments, 0);
$tw.boot.boot();
}
gulp.task('dist', function() {
runTiddlyWiki(editions.dist, '--rendertiddler', '$:/core/save/all', distOutput, 'text/plain');
});
gulp.task('server', function() {
runTiddlyWiki(editions.dev, '--server');
});
gulp.task('deploy', ['dist'], function(done) {
scp.send({
file: distOutput,
user: 'johndoe',
host: 'example.com',
path: 'path/to/www'
}, function(err, stdout, stderr) {
if (err) return done(err);
gutil.log('Deployed ' + gutil.colors.blue(distOutput));
done();
});
});
{
"plugins": [
"tiddlywiki/highlight"
],
"themes": [
"tiddlywiki/vanilla",
"tiddlywiki/snowwhite"
]
}
@sukima
Copy link
Author

sukima commented Apr 20, 2014

Updated for symlinking

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment