Skip to content

tomvit/humla

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Humla

Humla is an open source project of HTML5 presentation environment inspired by HTML5Rocks.

Similarly as Beamer exist for Latexers, Humla'a aim is to provide environment for creating slides for presentations in HTML while utilizing extensive HTML5 features. Humla is particularly useful for technical presentations and was originally created as a tool for the Czech Technical University courses Middleware and Web Services and Web 2.0. To see Humla in action, see W20 lectures.

There is currently no IDE available, slides must be edited directly in HTML.

Feel free to fork Humla, write plugins and patch it yourself!

Client

  • Every slide has a unique URL.
  • Plugin architecture with views and extensions.
  • A view defines how slides can be presented; there is currently a browsing view for convenient slides browsing, a slideshow view for presentations, a grid view for overview of slides in a presentation, and a print view for printing slides.
  • An extension defines processing of slides' content such as for replacment of variables, online integration with pictures from Google Drawing, online integration with github to display a code, Latex formulas, etc.

Server

  • Humla server writen in node.js

Browser Support

Humla currently works and is tested on the latest versions of Chrome and Safari.

Installation

Via git (or downloaded tarball):

$ git clone [email protected]:tomvit/humla.git

After Humla has been downloaded, go to the humla directory and update submodules:

$ git submodule update --init --recursive

Usage

In order to see how Humla is used to serve content for lectures, explore W20 repository. When you checkout the repository, you can use the following commands:

  • make html starts humla server, you can use your browser to explore the content of the course
  • make toc builds Table of Contents for lectures (toc.json) from lectures.
  • make pdf builds pdfs for every lecture.

Type make help to explore other options.

Humla can also be used together with services such as travis-ci to generate required content (toc, pdfs) and push the content to github pages. Explore travis.yml for details.

When you are in the browser, use the following keys to navigate the slides:

  • 1 switches to the browser view
  • 2 switches to the slideshow view
  • 3 switches to the grid view
  • 4 or p switches to the print view
  • left, right goes to the previous and next slide respectively
  • e shows the last error if any
  • d toggles the debug mode

Printing to PDF

Humla supports printing of slides to PDF by using phantomjs. This requires installation of fonts at a node where the PDF generation occurs. The current Humla styles use Times New Roman for all text, Arial for text in tables and Consolas for code snippets. PDFs can be generated by running make pdf.

License

The GPL version 3, http://www.gnu.org/licenses/gpl.txt