Your Moodle version

Activities: Presentation

Maintained by Matt Bury Matt Bury
Displays multimedia HTML5 presentations and slide shows in users' web browsers. A web friendly and more feature rich alternative to MS PowerPoint and PDF. However, presentations must be uploaded to moodledata via FTP and you'll need to learn some basic HTML to create presentations for it.
Moodle 2.5, 2.6

Deploy reveal.js presentations in Moodle!

Alternative to Microsoft PowerPoint presentations

See: for documentation and details about how to create slides and various effects/transitions.

reveal.js official demo:

WARNING: Not for the faint hearted but well worth the effort to learn how to use. You will need to have some knowledge of HTML scripting and how to upload files to Moodle's File System repository via FTP.

Create, upload, and display fully functioning multimedia HTML5/CSS/JS presentations. It supports:

  • Text
  • Images
  • Audio (HTML5 audio tags)
  • Video(HTML5 video tags)
  • SVG images and animations (depending on browser compatibility)
  • Embedded web pages and resources (iframes)

It doesn't support Flash or Java applets. This is a pure HTML5/CSS/JS presentation module.

Supports web audio and video formats and can provide multiple version files (in source tags), e.g. myvideo.mp4 and myvideo.ogg for cross browser compatibility.

Has some really slick transitions and styles built in. Makes your presentations look amazing smile

Create, display, transfer, and share sophisticated multimedia presentations that display beautifully in HTML5 compliant browsers.

This is a beta version. Not for production servers! repo:

Demo on Moodle:


Screenshot #0


Matt Bury
Matt Bury (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Just wondering . . .
    Sun, Sep 20, 2015, 4:56 PM
    What is he state of this plugin? Does it work well with 2.9? Is it production ready?
    Has anyone got a work around to avoid needing to use FTP?

  • Matt Bury
    Mon, Sep 21, 2015, 5:40 AM
    Hi Derek, yes it works the same with 2.9 - it's a very simple plugin based on the page resource. Since I did this, Hakimel has updated RevealJS to version 3.0 which isn't backwardly compatible (older presentations may work but with bugs). I'm currently working on a new version to accommodate RevealJS 3.x.

    Re: FTP, I'm not sure how to implement that with Moodle's file manager. The HTML5 presentations require some hands-on coding by content creators anyway so I doubt this'll be an easy plugin for everyone to use. Probably just some way of embedding presentations from a 3rd party site, like slideshare, would be more user-friendly. I'm open to suggestions though.

    There's at least one 3rd party online hosting and editor service here:
  • Picture of Al Brocklehurst
    Thu, Nov 5, 2015, 7:25 AM
    Great plugin Matt from the demos, anything that improves presentations and is cross platform is very welcomed.

    Not sure if this could be an ftp workaround but I upload html5 content created from ispring (PowerPoint addin) under the 'File' activity and set index.html as the default. Not sure if your plugin could use the 'File' activity approach in the same way. Just an idea smile
  • Matt Bury
    Thu, Nov 5, 2015, 9:40 AM
    Hi Al,

    Interesting idea. How would it work with this plugin?
  • Picture of Mike Ross
    Mon, Nov 23, 2015, 5:39 PM

    I get this error when I'm taking a course backup.

    Fatal error: Class 'backup_revealjs_activity_task' not found in /var/www/html/moodle/backup/util/factories/backup_factory.class.php on line 107

    Any ideas how to solve this??
  • Matt Bury
    Mon, Nov 23, 2015, 10:36 PM
    Hi Mike, Thanks for catching this. It was a stupid mistake on my part. I've patched it and updated the repository. Please let me know if it works for you now.
  • Matt Bury
    Mon, Nov 23, 2015, 11:15 PM
    For uploading presentations and how to link to media files, please see:
  • Picture of Mike Ross
    Tue, Nov 24, 2015, 1:37 PM
    Hi Matt,

    I've tested the plugin on my machine. It is working as expected.

    I really liked this plugin. Great work.

    Thanks a lot.
  • Picture of 景東 王
    Mon, Feb 8, 2016, 3:10 PM
    Hi Matt,
    I had installed in moodle3.0.2,but error happed
    Warning: rename(): The first argument to copy() function cannot be a directory in /moodle/mod/revealjs/lib.php on line 482
    Warning: rename(/moodle/mod/revealjs/revealjs,/moodledata/repository/revealjs/): Invalid cross-device link in /moodle/mod/revealjs/lib.php on line 482
    How to correct the errors? Thanks a lot.
  • Matt Bury
    Mon, Feb 8, 2016, 10:09 PM
    The error simply means that the installer tried to move an example presentation to the moodledata directory but failed. In which case, you'll have to move or create the directories manually. Details are here:
  • Picture of Ivan Korotinov
    Fri, Feb 26, 2016, 2:41 PM
    Hi Matt,
    I've started using mod Presentation with revealjs. All is quite OK, but one thing I'd like to ask.
    How to create several slide groups with vertical slides in it?
    I've used structure like:
    *First group of slides with vertical
    **div class="reveal"
    ******div class= "slides"
    ************some links here
    ************some videos here
    ************some anchors here
    So far works very well. I've added another one group the same way:
    ***Second group of slides with vertical***
    **div class="reveal"**
    ******div class= "slides"
    ************some links1 here
    ************some videos1 here
    ************some anchors1 here
    It worked nice, but after I logged off the Moodle yesterday and logged in this morning all the anchors, links and videos from first group stopped to work... They worked well only in second group.
    Only solution I found so far was to delete the second group of slides with vertical, after that all started to work normally.
    How to avoid this bug? I need more groups with interactive content, but I have no idea how to do that.

    Thanks in advance.
  • Picture of Ivan Korotinov
    Fri, Feb 26, 2016, 3:20 PM
    I understood what was wrong. I have to put the "DIVs" around whole presentation, but I've tried to place them around every single group of slides.
    Seems to be working OK right now smile
  • Matt Bury
    Sat, Feb 27, 2016, 6:41 AM
    Hi Ivan,
    The best place for documentation and examples is the RevealJS project site here:

    The way to get vertical slides is to nest sections inside each other, e.g.:

    -- section
    ---- slide 1
    -- /section
    -- section
    ---- slide 2
    -- /section
    -- section
    ---- slide 3
    -- /section

    I hope this helps!
  • Picture of Carlo Stefano Cavicchioli
    Thu, May 19, 2016, 1:57 PM
    Hi Matt ,
    Your plugin is really good, i installed it on moodle 2.8.6 and it works.
    I've just a problem with the position on the screen: the slideshow appears on the right-bottom part of the screen and more than half part is cutted. I tried the same presentation file on and it works properly. Can yoj help me?
  • Matt Bury
    Thu, May 19, 2016, 11:41 PM
    Hi Carlo,

    Thanks! smile

    Different (CSS) themes use different text sizes and different browsers, operating systems, and screen sizes will always interpret the layouts differently - This is HTML5, not Flash. All I can recommend is to try different themes and adjust the layout of slides accordingly.

    I hope this helps.
1 2 3
Please login to post comments