Select Moodle version:

Activities: Presentation

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.
Maintained by: Matt Bury Matt Bury
for 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:




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

Comments RSS

Show comments
  • Matt Bury
    Fri, Nov 22, 2013, 9:55 AM
    To be absolutely sure that we're on the same page, on your server you should have the directories as:




    *or public_html, www, or whatever your public directory is. Please note that /moodledata/ is outside the public directory and so cannot be accessed directly via HTTP connections. The proxy script:


    fetches the files from /moodledata/repository/revealjscontent/ for you.
  • Picture of Rafael Christofano
    Fri, Nov 22, 2013, 6:45 PM
    Hi Matt, thahk you for helping me!!

    My Moodle is

    My content.php file is

    My mooldedate folder is in server root, outside folder /pubilc_html/.

    This the root... /moodledata/repository/revealjscontent
  • Matt Bury
    Fri, Nov 22, 2013, 10:06 PM
    The public URL to the demo presentation on my Moodle is: (This will display the raw HTML fragment, not the slideshow)

    Here's the URL to an image:

    So on your Moodle, it should be something like:

    I'll be away for about a week so I won't be able to reply for a while. Post any further questions here and I'll get back to you when I can.
  • Matt Bury
    Fri, Nov 22, 2013, 10:07 PM
    Moodle turned the URL into embed code! :- /
  • Picture of Rafael Christofano
    Fri, Nov 22, 2013, 11:56 PM
    Ok Matt, thanks again!!

    But my problem not is in create presentation file (.html), my problem is in create one activity using plugin "presentation"

    In the bellow link, is the image of error:

    I can't select the presentation file for my activity..

    Appears only " Choose File" , but I can't to do more nothing, because the file is required
  • Picture of Jonas Nockert
    Mon, Dec 16, 2013, 9:40 PM
    Hi Matt, I love reveal.js and I've been thinking about developing a new plugin based on it but I don't want two different reveal.js plugins unless they really have different use cases.

    The thing is that we have a lot of Powerpoint presentations already and teachers are familiar with it in their class rooms. They're not that familiar with ICT and Moodle (yet). Most of them do not know HTML.

    One of my priorities is moving away from distributing powerpoints to students (as they might not have that installed on all their devices) and I really want to avoid just converting them to PDFs or similar. Exporting them to images is no problem but it takes time to place them on pages in Moodle one by one (perhaps there's a better way?)

    So I've been thinking about a plugin where one would upload a number of exported powerpoint images which are then automatically shown in reveal.js sorted by filename . That is, a much more limited version than you've created.

    What do you think, are the use cases different enough that it warrants creating a "competing" reveal.js plugin? Please let me know if I'm thinking inside the box and I'm missing any obvious alternatives.

    Best regards,

  • Matt Bury
    Tue, Dec 17, 2013, 1:13 AM
    Hi Rafael,

    It appears that the module can't find any presentation files. All I can suggest is that you double-check the /moodledata/repository/revealjscontent/aaaaa/... directory structure and make sure that those directories are accessible to the /moodle/mod/revealjs/content.php script. (Perhaps there's a permissions issue?)
  • Matt Bury
    Tue, Dec 17, 2013, 1:23 AM
    Hi Jonas,

    There are a number of applications for creating slide shows that people have different preferences for. I wonder if it might be a more productive strategy to focus on conversion software/apps to convert different presentation formats into ones that Moodle already supports?

    Additionally, I think the Book module is as good an authoring tool for PPT style slide shows as any, and simpler and easier to use, with better support for different media file formats, and more options (and no more stupid transitions and awful page layouts that often take up more of the author's time than the actual learning content!?). Perhaps developing support tutorials for staff that are "stuck in the Microsoft rut" could be less problematic and time consuming in the longer term? Or perhaps I'm asking too much - I understand how much of a challenge changing the way people work can be.
  • Picture of Prakash Panneerselvam
    Thu, Jan 2, 2014, 6:24 AM
    Hi Matt, I am also getting the same issue as Rafael. Not getting the any presentation files.
  • Matt Bury
    Sat, Jan 18, 2014, 7:23 AM
    Hi, I'm working on a new installer that will also put an example presentation in place. Hopefully, that'll clarify things.

    I've tested it on Windows and Linux and it should work on both platforms.

    Also, there may be issues if you have a non-standard server configuration, e.g. files stored on a different server to Moodle. Please check and let me know if that's the case.
  • Matt Bury
    Mon, Jan 20, 2014, 8:43 PM
    BTW, thanks to everyone who's provided feedback! It really helps smile
  • Matt Bury
    Sat, Feb 8, 2014, 1:48 AM
    OK, I've just updated the module. Please uninstall and delete the previous version before attempting to install the new one.

    The latest version moves an example presentation to /moodledata/repository/revealjs/_revealjs_/matbury/sdl_learner/ when you install it for the first time. If it doesn't get moved during the install process when you click on "save settings", then you'll have to move it manually.

    Good luck!
  • Matt Bury
    Sat, Mar 1, 2014, 12:53 AM
    Just updated the module. Fixes a bug when Moodle hasn't created the /moodledata/repository/ directory (not created by default).
  • Just wondering . . .
    Wed, Mar 12, 2014, 6:51 AM
    Matt, I have just been updating my thoughts about Powerpoint alternatives > Moodle. I have no need for transitions.
    Is there any way to use this with files uploaded another way, maybe a folder?

  • Matt Bury
    Wed, Mar 12, 2014, 10:49 AM
    Hi Derek,

    Re: uploading files another way, the issue is with Moodle's file management system. Any HTML + JS or XML driven presentation needs predictable file paths so that they aren't broken when the package is uploaded. I can't see an easy way to do that currently, hence the File System + FTP workaround.

    Each actual slide show is a single HTML fragment with pages divided by tags.

    Something else I've come across, different OS' and browsers interpret audio and video autoplay parameters differently which can mess up standalone presentations, e.g. if you want audio to play continuously or to play when a slide appears. HTML5 has yet to be sufficiently standardised.
1 2
Please login to post comments