App::SlideServer


Follow Along at:
nrdvana.net/presentations/app-slideserver

Source:
github.com/nrdvana/perl-App-SlideServer
Michael Conrad
mike@nrdvana.net
CPAN: NERDVANA

Features

  If all you know is markdown, that's enough

  Cool presentation mode
  Multiple device control, like Keynote

  low complexity, high flexibility
  easy to publish slides without a server

Design

Design, Backend

Design, Frontend

HTML Structure

<body>
  <div class="slides">
    <div class="slide">
      <ul class="auto-step">
        <li>...
        <li>...
      </ul>
      <pre class="notes"> ... </pre>
    </div>
  </div>
</body>

Markdown Structure


    ## Heading 2
  * Item 1
  * Item 2
  * Item 3

&lt;pre class=notes>
   ...
&lt;/pre>

A complete Example

Deploying to a Server

$ docker build -t slideserver -f share/Dockerfile .

$ docker create --name myslides -v $PWD:$PWD -w $PWD -p 80 .

$ docker start myslides && docker logs --follow myslides
  makes docker image 'slideserver'
  uses current App::SlideServer on cpan
  makes docker container 'myslides'
  uses current dir slides.md or .html

Deploying under Traefik

Future Work

  static pages - inline images and js for local
  presenter should choose color scheme, users override
  live terminal to screen session