Shameless plug: I'm a lecturer and have scratched this itch some time ago with a pet project that a couple lecturers are using now: https://github.com/munen/p_slides/
It doesn't ship it's own editor, because everyone already has a favorite(for me that's formerly vim, now Emacs). It's only static files, so it doesn't need a server or pre-compilation. It's extensible, has syntax highlighting and produces PDFs for the students. Also, it's only a mash up of great existing libraries, so it needs no maintainance and further development. One of the few pieces of software that I wrote which are feature complete^^
A couple friends(also lecturers) and I have been using it for about five years now.
* Out of the box reveal-js does not support Markdown Slides. Yes, of course they do, but you'll have to write HTML per slide and then embed Markdown. p_slides is Markdown online.
* reveal-js is _much_ bigger whereas p_slides relies on well tested and established software. For example many features that you can find on the reveal-js README are also included in p_slides, because it uses W3Org slidy-js[1]. p_slides actually is only very little code itself as it glues together very well established and good existing libraries. reveal-js does a lot by itself. Both options are valid, yet they are different(;
Thanks for that hint! p_slides is explicitly dumb, though. It has no requirements to install additional software, pre-compile anything or run a server. This way it just works for many lecturers on different Operating Systems with very different areas of expertise and continues to do so without any changes after 5 years. Hosting on GH Pages is totally awesome for us developers, however my primary use case is to have the slides self-contained (no dependencies) in a private repository with other lecturers for using them in the university.
Hello, FYI: The output of Slide Show (S9) is a self-contained static site (works anywhere incl. of course private repos etc.) - you can also create a single-file PDF as an option. Only the templates "require" GitHub Pages or Jekyll if you want a "live" preview for demos. Cheers. PS: More info @ http://slideshow-s9.github.io
S9 really looks nice - however, it is not self contained in the sense that I was referring to. p_slides is essentially a single HTML file (with the other assets hosted somewhere).
For S9, Ruby and usage of the command line is required. For a developer, that's not a big issue, of course. Myself, I'm a Ruby/JS/Clojure dev, so I do not mind installing one more gem(; However, my goal was to _really_ make p_slides self-contained. There is no need to install anything, run any pre-compiler or run the slide within a web-server. It doesn't even use npm or bower to install the assets. With this methodology, p_slides certainly is technologically less complex (or interesting^^), but it continues to work after years without any change on any computer that has a browser. That's just not happening with Ruby or Node or any other dependency. I'm not saying the latter is bad (it is not at all!), I'm saying this simplicity ability to be completely self-contained with no tooling required was the specific design decision for p_slides and it served me and a couple lecturers well. I basically made no advertisement for it, I just wrote it, because I wanted something that just works and I can distribute to students, too.
Looks interesting, but is a completely different thing - it's a SaaS solution whereas p_slides is static files that you can put into version control and work collaboratively with your peers. For me, that's a godsend regarding the alternative workflows and other tools. My peer lecturers value it a lot, too. But of course, we are all CS lecturers^^ For other people a hosted solution might be a really interesting choice!
a) looks cool b) i would be much more interested if the "example presentation" actually showed me a presentation, not some raw html. maybe use GitHub Pages to through up an example?
b) Very good point. I just made it so that you can now click on the example and see it unfold in your browser without having to clone the repo. Thank you for the feedback!
This fails (my) personal test of all HTML systems -- it doesn't scale well with changes in resolution, and many projectors will auto-change my laptop's size when I plug them in.
My hacked up slide system (which I want to dump, I hacked someone else's library years ago) makes a fixed div of size 1024x768, and then uses CSS zoom to resize that to the browser window.
Could you elaborate? How does it not scale? It's using bootstrap for styling, so there's that. Me and a couple of lecturer peers have been using it in lectures for classes of all sizes which includes different kinds of beamers. As you stated, my machine will also auto-scale resolution in this scenario. If all else fails, there's Strl++/- (;
I'm also using it on OS X and Debian. Both work well. And as is recognizable from the git commit history - there's not much that needs to be done over the years to keep it going. Exactly my kind of HTML system - dead simple, no dependencies, works also years later^^
Well I could ctrl +/-, but then have to worry some slide mid-presentation will still be too large and have to shrink again.
With PowerPoint / keynote and friends, I can be sure all my text will fit on the screen, even if I end up on a stupid 800x600 projector. No HTML framework, except my hacky mess, seems to do that. Maybe resizing mid presentation bothers other people less than me.
Ok, I do understand now. In my career, I have not met a 800x600 projector - but the problem scales (pun intended^^), of course.
Would you be willing to share your hacky mess or make a PR? I really do get what you're referring to now and do think that if you won't contribute, I'll have to write my own hacky mess(;
Older projectors have this resolution, but 1024x768 is more common. Some of the projectors at my university are 800x600 and I've run into them at conferences where the hotel conference facilities are older and haven't kept up.
If we're plugging, I'm very partial to Hovercraft, which throws a wrapper around impress.js, and provides a proper presenter's console as part of the rendered HTML/JS: https://github.com/regebro/hovercraft
Looks interesting, on a first try the demo presentation didn't work on my iPhone 6s - and you need to install additional software. p_slides is explicitly dead simple.
hovercraft looks nice, though - I'll probably check it out later on a bigger machine, again. Thanks for sharing!
IBWCL is REQUIRED reading for anybody intending to study compsci or work with computers in any capacity. It's dated, but it explains the principles of open source, UI, and abstraction clearly and simply. These are all things that you Need to Know.
What does markdown have to do with text layout? It basically acts like a lightweight, readable version of html. If you don't like how it renders, render it some other way.
For someone who is on windows, this is a godsend. The Mac guys all have Deckset[0] which is amazing. Was searching for something like this to make quick slides. Thanks much :)
I have used deckset for all of my presentations[1]. It's fantastic, and forces you to follow Zach Holman's rules[2] about slide typography, which is basically "you can't go too big."
The presentations look wonderful. Zach has constantly been my inspiration to make better slides. Almost ALL my slides[0] incorporate some of his teachings :)
It's uses markdown as well, has a presenter mode, speaker notes, and is easily customizable. The best thing is that everything can neatly fit in an HTML file or you can create a folder with the JS for offline usage.
I disagree VEHEMENTLY. Sent is a godsend if you want to write a simple presentation without the bullshit. And if you use sent, the constraints placed on you force you towards making good slides.
Disagree all you like. The same is true of org-mode with reveal, or Marp, or any of myriad other tools. There's no magic to suckless software. It's just a lot more opinionated than most, a trait which plainly suits you well.
Who called it useless? But ascribing rampant NIH to suckless is hardly a strain on credulity; otherwise they'd just use FreeBSD, instead of reinventing it piecemeal on the Linux kernel.
You did describe it in a way that implied it was useless if NIH wasn't your thing.
And no, I don't argue that NIH doesn't exist in other suckless projects, merely that it isn't the rationale for sent. Sent has some solid advantages over anything else out there, at least for me.
I don't agree that the implication you ascribe is present, or that sent isn't primarily motivated by NIH in the same way that more or less all of the suckless repertoire appears to be, but reasonable people can differ on such points without acrimony. In any case, I'm glad you found something that suits you.
Well, then. I'm sorry for reading that implication in, and glad that we could come to understand each other better.
HN is a lot like Youtube comments: There's a lot of arguing, but sometimes, people treat each other decently. It's honestly kinda surreal, coming from 4chan, reddit, or tumblr.
Clarification: reveal.js supports markdown for individual slides. This project (Marp) allows you to write your whole presentation in a single markdown document.
(Using just "---" to separate slides instead of repeating:
<section data-markdown>
<script type="text/template">
slide markdown goes here
</script>
</section>
I've been working for a bit on a project for converting mind maps into slides. One feature I really liked was changing the level of depth of items.
Let me try to explain what I mean. Say you're brainstorming and create a tree/toc of your slides. Then you start filling in the items for each slide. While you're doing so, you realize that slideA requires more details, so you turn the slide into a section and it's items into slides. Similarly, another section with multiple slides becomes less important, so you turn that section into a slide slideB and its slides into items of slideB.
The reason I like mind maps/trees is that these operations can be easily done by changing the level of depth of the items, e.g. via drag & drop.
I really like this idea of a simple markup for creating slides (plus the fact that it's text, so easy to version), and if this feature of making easy to change the level of depth of items could be integrated I think this would be a super plus!
I make a lot of presentations, many of which include plot.ly plots. slides.com made it easy to embed iframes, and they are sized nicely on every device I've tried.
I used to think text was the future for making slides, but then I realized I cared too much about exactly how my slide looked, and a WYSIWYG saves a ton of time if you want that level of control.
I create and deliver a lot of presentations. What I notice: I often use PPT "slide sorter" to reorganize slides. My presentations are usually hundreds of slides, and I can't imagine hunting through markup for my frequent (daily) reorganizing. I also use the Training standard of about 50% to 60% graphics - and I tend to revise and revise graphics as I work on the course. Having integrated graphics is both very fast and very easy - with easy access to other slides for cut/paste (and an integrated library of symbols I create and reuse.)
I'm not complaining about this project...I'm just commenting about why no "production" course developers would consider switching to something like this. Just an FYI.
Don't have Github account so I can't place an issue there, but PDF export appears to fail with source-code listings in the Gaia theme.
Otherwise, this application is simple and to the point for making quick slide sets. I wonder if someone will invest the time to make a Go-lang style slide theme.
Another project is OdpDown. It converts Markdown to Opendocument Format presentations in contrast to the PDF that is created by Marp.
I like the approach of creating a single static file (i.e. no JavaScript).
An advantage of creating ODP files is that the whole reusable presentation is one file. PDF is not as friendly for reuse.
The presentation author that uses Marp could publish a git repo or a zip file with the source files.
A big advantage of HTML and PDF is that they render directly in the browser. ODF support in browser is a still a dream for the future.
The author of odpdown is a contributor to LibreOffice.
I've consistently used PDF for my slides simply because it's portable. Most of the places I've presented all have had a dedicated computer connected to the projector along with a second cable for laptops. If for some reason I can't connect my laptop to a projector I can use my backup copy on a USB drive and plug that in to the computer connected to the projector.
Very cool! I'm trying to write my own markdown-to-reveal (to know revealjs supports Markdown, but it's a bit of a hack and doesn't fit my workflow or lecturing needs).
If I have one critique from growing the docs: I find myself giving presentations on the fly. I hack around on Google Slides until the last minute and throw up a link so that I can share with the rest of the world, but also so that I can use any Internet connected computer to present. With revealjs, I get both local and easy-to-S3 access. I may have missed it but can Marp slides be ported so that other computers can run the presentation without installing the app?
Very nice. I wrote a very similar authoring / presentation tool based on MD. It's being used as the presentation app for Axway's instructor-led training and Open Badge authoring. : https://twitter.com/tzmartin/status/687011251172458496
Slide authoring supports nearly all of Deckset syntax (plus a few more tokens), slide configuration and custom themes.
While we're plugging, prefer sent (http://tools.suckless.org/sent/). It's dead simple, and its limitations push you towards making better presentations.
I typically have used either Beamer (what I currently use) or Prosper (what I used to use) document classes in LaTeX for my slides and have since probably the 90s. For me, the big thing with using LaTeX is that I can get consistent fonts between the equations on my slides and the symbols in my figures since I draw my figures using LaTeX in some way (usually TikZ or Sketch[0]). Plus, I can have my figures under source control in a manner that supports simple diffs.
Markdown is fine for github, but isn't there even a slight bit of Helvetica-fatigue out there? Aren't we in a position, 20 years after HTML's widespread adoption, where we can aspire to something slightly more artful/communicative than Markdown's catastrophically simplistic and tragically ugly idea of layout?
Markdown represents, honestly, the massacre of the art of typography. It is ironic how such an ugly standard clashes with the its inventor's purported love for Apple, a company whose very DNA is about the beauty of layout, fonts, and the visual representation of the written word.
Markdown -> you have been weighed in the balance and found (severely) wanting.
While this does look really cool, it should be noted that Deckset is a really good paid app that's been doing this for a while on the mac, and it looks like you'll get much nicer looking results with Deckset.
It doesn't ship it's own editor, because everyone already has a favorite(for me that's formerly vim, now Emacs). It's only static files, so it doesn't need a server or pre-compilation. It's extensible, has syntax highlighting and produces PDFs for the students. Also, it's only a mash up of great existing libraries, so it needs no maintainance and further development. One of the few pieces of software that I wrote which are feature complete^^
A couple friends(also lecturers) and I have been using it for about five years now.