Skip to content

Instantly share code, notes, and snippets.

@JeffreyWay
Created April 6, 2012 22:11
Show Gist options
  • Save JeffreyWay/2323439 to your computer and use it in GitHub Desktop.
Save JeffreyWay/2323439 to your computer and use it in GitHub Desktop.
I wish it could be that simple. Something for me to build.
presentation
.title('My Great Presentation')
.slide({
title: 'Learn About Borders',
bullets: [
'Thing 1',
'Thing 2',
],
code: ['path/to/file.css', [2,4]] // path to file, lines to grab
})
.slide({
title: 'Learn About Margins',
quote: 'Always remember bla bla',
transition: 'fade' // optionally specify transitions
})
.slide({
title: 'Learn About Things',
body: 'Description that goes below the title',
code: ['path/to/snippet', [0,3]] // path, lines
})
.slide({
title: 'Learn About Whatever',
image: 'path/to/image.jpg'
});
@JeffreyWay
Copy link
Author

So you write that code, and that's it. A beautiful, interactive/animated, presentation is generated when you view the URL in the browser. #projectForMay

@banago
Copy link

banago commented Apr 6, 2012

A very cool approach I'd say. Will keep an eye on it.

@LandonSchropp
Copy link

Why not write them in HTML? You could create a microformat for your presentation data, and then let the script process the HTML and generate the presentation. This would allow you to easily change how you presentation looks and feels (i.e. for print you could place multiple slides on a page). It seem like this would be a little more flexible than hard-coding the presentation directly in JavaScript.

@AldoZ
Copy link

AldoZ commented Apr 6, 2012

Data driving a presentation like this and generating code that could be processed through impress.js ( http://bartaz.github.com/impress.js/#/bored ) would create a killer presentation package.

@geddski
Copy link

geddski commented Apr 6, 2012

JSON config file might be even better.

@jimbijwaard
Copy link

Hey Jeffrey, great approach. Maybe some more elements could be useful for metadata and styling, like author, theme for the presentation and layout of the slide. Something like

presentation({
    .title('My Great Presentation')
        .author('Jeffrey Way')
        .theme: ['path/to/theme.css']

    .slide({
            layout: 'two-columns',
            title: 'Learn About Borders',
            bullets: [
                        'Thing 1',
                        'Thing 2',
            ....

)}

Good luck with the project, can;t wait to see the results!

@JeffreyWay
Copy link
Author

@landon - The goal is to make the process as quick as possible. The whole point is to get out of creating HTML slides.

@GEDDesign - I agree.

@jim - Yeah, good point. I'll plan that.

Hey guys - here's the GitHub agenda/mission statement: https://github.com/JeffreyWay/Easy-Slides#readme

@jimbijwaard
Copy link

@jeffrey Another advantage might be to share and remix presentations. Could it be possible to 'hot-link' a slide, which get's updated as soon as the master-slide is updated?

{ type: 'embed',
  source: ['path/to/master-presentation.js[slide#]]'}

For example if you add a contact-slide in there somewhere, but you change contact-details later.. You could have a master contact slide, which you embed in all your presentations...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment