cleaver

30-second slideshows for hackers

Github星跟蹤圖

Cleaver

30-second Slideshows for Hackers. http://jdan.github.io/cleaver/

Travis Build
NPM version

Intro

Cleaver turns this:

title: Basic Example
author:
  name: Jordan Scales
  twitter: jdan
  url: http://jordanscales.com
output: basic.html
controls: true

--

# Cleaver 101
## A first look at quick HTML presentations

--

### A textual example

Content can be written in **Markdown!** New lines no longer need two angle brackets.

This will be in a separate paragraph

--

### A list of things

* Item 1
* Item B
* Item gamma

No need for multiple templates!

Into this:

output

Quick Start

Get it on NPM:

npm install -g cleaver
# To update: npm update -g cleaver

And run it like so:

cleaver path/to/something.md

You can also watch for changes on a file and automatically recompile with:

cleaver watch path/to/something-changing.md

# Watching for changes on presentation.md. Ctrl-C to abort.
# Rebuilding: Thu Nov 07 2013 00:15:03 GMT-0500 (EST)
# Rebuilding: Thu Nov 07 2013 00:15:21 GMT-0500 (EST)
# Rebuilding: Thu Nov 07 2013 00:16:01 GMT-0500 (EST)
# Rebuilding: Thu Nov 07 2013 00:16:09 GMT-0500 (EST)

Use the --debug flag to display debug information:

$ cleaver --debug examples/basic.md
  cleaver loaded input document +0ms
  helper read /Users/jordan/Projects/cleaver/templates/layout.mustache +0ms
  helper read /Users/jordan/Projects/cleaver/templates/author.mustache +0ms
  helper read /Users/jordan/Projects/cleaver/templates/default.mustache +0ms
  cleaver loaded templates +3ms
  cleaver parsed metadata +4ms
  helper read /Users/jordan/Projects/cleaver/resources/default.css +13ms
  helper read /Users/jordan/Projects/cleaver/resources/github.css +0ms
  helper read /Users/jordan/Projects/cleaver/resources/script.js +0ms
  cleaver loaded static assets +9ms
  cleaver rendered slides +1ms
  cleaver rendered presentation +1ms

More Info

Cleaver is a one-stop shop for generating HTML presentations in
record time. Using some spiced up markdown, you can produce
good-looking, interactive presentations with a just a few lines of text.

Slides are written in Markdown,
and are separated by two dashes (--).

Options

title: Basic Example
author:
  name: Jordan Scales
  twitter: jdan
  url: http://jordanscales.com
style: basic-style.css
output: basic.html

Cleaver supports several basic options that allow you to further customize the
look and feel of your presentation, including author info, stylesheets, and
custom templates.

See the documentation on
options for more
information.

Be sure to check out the wiki as well.

Themes

Check out the themes
page on our wiki.

title: Theme Example
output: theme.html
theme: jdan/cleaver-retro

Cleaver has substantial theme support to give you more fine-grained control
over your presentation, similar to options. Instead of manually
specifying a stylesheet, template, layout, and others, you can specify a single
theme containing each of these assets. More specifically, a theme may contain:

  • style.css - styles for your presentation
  • template.mustache - a template used to render the slides in your presentation
  • layout.mustache - a template used to render the entire document of your
    presentation
  • script.js - javascript to be included in your slideshow

A theme does not need to contain all of these files, only the ones present
will be loaded into your slideshow.

Examples

cleaver-retro

cleaver-ribbon

reveal-cleaver-theme

Specifying Themes

Themes may be specified by one of the following options:

  • An absolute or relative path to a directory
  • A URL to a directory
  • A github repository in the form of username/reponame

Overriding Themes

By default, style.css and script.js will be appended to the default
stylesheets and javascripts included in cleaver presentations. If you wish to
completely override these defaults, you must include another file in your
theme - settings.json - corresponding to the following:

{
  "override": true
}

Template files will automatically override the default templates.

More Info

For more information on themes, check out
our documentation.

Markup

Cleaver slides are rendered using the following template:

{{#slides}}
  <div class="slide{{#hidden}} hidden{{/hidden}} {{classList}}" id="slide-{{id}}">
    <section class="slide-content">{{{content}}}</section>
  </div>
{{/slides}}

And produce the following markup:

+-------------------------------+, #slide-N, +-------------------+, .slide-content, +-------------------+, (navigation), +-------------------------------+

#slide-N (for example, #slide-3) allows you to identify a particular
full-bleed slide by its position in the slideshow. It extends to the bounds of
the page.

.slide-content is a smaller window which holds the actual content of the
slide.

Class List

A class list can be placed after each "slice" (denoted --) to help you
style individual slides without worrying about their index.

-- bg

This slide will have a class "bg" associated with it

-- bg blink

This one, too, but it will also have the class "blink"

Slide Types

Title slide

# Cleaver 101
## A first look at quick HTML presentations

h1 and h2 elements (prefaced with # and ## respectively), will
automatically include padding to render a title slide.

Other slides

### A list of things

* Item 1
* Item B
* Item gamma

No need for multiple templates!

Since slides are written in Markdown,
you can include things like lists, images, and arbitrary HTML.

h3 tags (prefaced ###) are automatically given a bottom border to
represent a slide title.

Cleaver supports keyboard navigation for switching between slides.
Alternatively, click the control buttons located below the presentation.

To navigate the slideshow:

  • forward: K, L, UP, RIGHT, PgDn, and Space
  • reverse: H, J, LEFT, DOWN, PgUp, and Backspace

The toggle fullscreen mode, press the ENTER key.

Contributing

  • Fork it
  • Clone it
  • Install dependencies (npm install)
  • Checkout a release branch (git checkout -b feature/cool-wordart)
  • Make changes, commit, and push (npm test and make sure it passes)
  • Open a pull request!

With <3,@jdan

--

MIT Licensed

主要指標

概覽
名稱與所有者jdan/cleaver
主編程語言JavaScript
編程語言JavaScript (語言數: 3)
平台
許可證MIT License
所有者活动
創建於2012-10-07 04:12:01
推送於2021-10-19 12:36:46
最后一次提交2017-12-20 08:44:03
發布數23
最新版本名稱v0.8.7 (發布於 2017-12-03 04:48:46)
第一版名稱v0.1.0 (發布於 2013-08-06 22:58:50)
用户参与
星數4k
關注者數85
派生數306
提交數290
已啟用問題?
問題數96
打開的問題數13
拉請求數30
打開的拉請求數4
關閉的拉請求數49
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?