Turn markdown files into html presentations you can share from dropbox, S3, ...
Bedecked converts markdown files to portable html5 presentations. I'm open to adding support for other templating engines too, right bedecked also supports jade and vanilla html.
Inspired by hackynote, I wanted a simple way to build snazzy presentations from markdown files that I could export as a single HTML document. Pop those in your public dropbox folder (or S3, or whatever) and share.
Bedecked looks for consecutive empty lines in your source file to insert slide breaks, for example:
## My first slideThis will be on one slide## My second slideThis will be on a new slide (notice the two empty lines above the heading)### Another slideMore than two empty lines is fine too.
Install bedecked globally to get access to the cli with:
npm install -g bedecked
You can also use bedecked api locally in your app:
npm install --save bedecked
After a global install you'll have access to the
bedecked [options] <file>
<file> is your markdown file. Your html presentation will be written to
stdout so you'll most often be sending that directly to a file:
bedecked my_prez.md > my_prez.html
Bedecked has built in options to switch the presentation theme, templating engine, start a live reload server, and more. We're using reveal.js for presentations and all reveal configuration options can be set with the bedecked cli.
bedecked --help for more information on command line usage.
Using the same options over and over? Have a favorite theme? Bedecked will read
$home/.bedeckedrc if it exists. The file should be in JSON format
and can override any option listed
The bedecked module exports a single method:
var bedecked = require'bedecked'presentationFile = 'path/to/my/prez.md'opts =engine: 'markdown' // markdown | jade | htmltheme: 'black' // See available themesprotocol: 'https:' // http: | https: | ''title: 'Just Another Bedecked Presentation'revealjsVersion: '3.0.0'// SeeoptAutoSlide: 0optAutoSlideStoppable: trueoptCenter: trueoptControls: trueoptEmbedded: falseoptFragments: trueoptHideAddressBar: trueoptHistory: falseoptKeyboard: trueoptLoop: falseoptMouseWheel: falseoptOverview: trueoptPreviewLinks: falseoptProgress: trueoptRtl: falseoptSlideNumber: falseoptTouch: trueoptViewDistance: 3;// All options are optional ;) as is the opts parameter itselfbedeckedpresentationFile optsiferr// Whoops!// Do something with HTML;
It would be a real pain to have to run
bedecked whenever you wanted to see
your latest changes. Bedecked ships with a live reload server to support
interactive presentation development. Try
bedecked --server my_prez.md or view
bedecked help server for more information.
The default port
bedecked --server uses is
9090. You can set a different
port by adding the
--port <portNumber> option:
bedecked --port 80 --server my_prez.md
Note that the
port options are only available with the bedecked
Test and lint with
grunt watch to run tests interactively.
Use the tag bedecked on Stack Overflow. For quick things I can be reached on twitter @jusrussell.