showoff 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.txt DELETED
@@ -1,233 +0,0 @@
1
- ShowOff Presentation Software
2
- =============================
3
-
4
- ShowOff is a Sinatra web app that reads simple configuration files for a
5
- presentation. It is sort of like a Keynote web app engine - think S5 +
6
- Slidedown. I am using it to do all my talks in 2010, because I have a deep
7
- hatred in my heart for Keynote and yet it is by far the best in the field.
8
-
9
- The idea is that you setup your markdown slide files in section subdirectories
10
- and then startup the showoff server in that directory. It will read in your
11
- showoff.json file for which sections go in which order and then will give
12
- you a URL to present from.
13
-
14
- It can:
15
-
16
- * show simple text
17
- * show images
18
- * show syntax highlighted code
19
- * bullets with incremental advancing
20
- * re-enact command line interactions
21
- * call up a menu of sections/slides at any time to jump around
22
- * execute javascript or ruby live and display results
23
- * do simple transitions (instant, fade, slide in)
24
-
25
- It might will can:
26
-
27
- * show a timer - elapsed / remaining
28
- * perform simple animations of images moving between keyframes
29
- * show syncronized, hidden notes on another browser (like an iphone)
30
- * show audience questions / comments (twitter or direct)
31
- * let audience members go back / catch up as you talk
32
- * let audience members vote on sections (?)
33
- * broadcast itself on Bonjour
34
- * let audience members download slides, code samples or other supplementary material
35
-
36
- Some of the nice things are that you can easily version control it, you
37
- can easily move sections between presentations, and you can rearrange or
38
- remove sections easily.
39
-
40
- Usage
41
- ====================
42
-
43
- ShowOff is meant to be run in a ShowOff formatted repository - that means that
44
- it has a showoff.json file and a number of sections (subdirectories) with markdown files for the slides you're presenting.
45
-
46
- $ gem install showoff
47
- $ git clone (showoff-repo)
48
- $ cd (showoff-repo)
49
- $ showoff serve
50
-
51
- If you run 'showoff' in the ShowOff directory itself, it will show an example
52
- presentation from the 'example' subdirectory, so you can see what it's like.
53
-
54
- Alternatively you can generate a static version of your presentation by either
55
-
56
- $ showoff static
57
-
58
- Which will generate a static directory with an index.html and all other necessary files.
59
-
60
- Or
61
-
62
- $ showoff static pdf
63
-
64
- Which will generate a file called <name>.pdf where <name> is the name of the subdirectory.
65
-
66
-
67
- Slide Format
68
- ====================
69
-
70
- You can break your slides up into sections of however many subdirectories deep
71
- you need. ShowOff will recursively check all the directories mentioned in
72
- your showoff.json file for any markdown files (.md). Each markdown file can
73
- have any number of slides in it, seperating each slide with the '!SLIDE'
74
- keyword and optional slide styles.
75
-
76
- For example, if you run 'showoff create my_new_pres' it will create a new
77
- starter presentation for you with one .md file at one/slide.md which will have
78
- the following contents:
79
-
80
- !SLIDE
81
-
82
- # My Presentation #
83
-
84
- !SLIDE bullets incremental transition=fade
85
-
86
- # Bullet Points #
87
-
88
- * first point
89
- * second point
90
- * third point
91
-
92
- That represents two slides, the first contains just a large title, and the
93
- second is faded into view showing the title and three bullets that are then
94
- incrementally shown. In order for ShowOff to see those slides, your
95
- showoff.json file needs to look something like this:
96
-
97
- [
98
- {"section":"one"}
99
- ]
100
-
101
- If you have multiple sections in your talk, you can make this json array
102
- include all the sections you want to show in which order you want to show
103
- them.
104
-
105
- Some useful styles for each slide are:
106
-
107
- * center - centers images on a slide
108
- * full-page - allows an image to take up the whole slide
109
- * bullets - sizes and seperates bullets properly (fits up to 5, generally)
110
- * smbullets - sizes and seperates more bullets (smaller, closer together)
111
- * subsection - creates a different background for titles
112
- * command - monospaces h1 title slides
113
- * commandline - for pasted commandline sections
114
- (needs leading '$' for commands, then output on subsequent lines)
115
- * code - monospaces everything on the slide
116
- * incremental - can be used with 'bullets' and 'commandline' styles,
117
- will incrementally update elements on arrow key rather than switch slides
118
- * small - make all slide text 80%
119
- * smaller - make all slide text 70%
120
- * execute - on js highlighted code slides, you can click on the code
121
- to execute it and display the results on the slide
122
-
123
- Check out the example directory included to see examples of most of these.
124
-
125
- Transitions can be supplied through the use of transition=tname on the !SLIDE
126
- definition, where tname is one of the following supported transitions:
127
-
128
- * blindX
129
- * blindY
130
- * blindZ
131
- * cover
132
- * curtainX
133
- * curtainY
134
- * fade
135
- * fadeZoom
136
- * growX
137
- * growY
138
- * none (this is the default)
139
- * scrollUp
140
- * scrollDown
141
- * scrollLeft
142
- * scrollRight
143
- * scrollHorz
144
- * scrollVert
145
- * shuffle
146
- * slideX
147
- * slideY
148
- * toss
149
- * turnUp
150
- * turnDown
151
- * turnLeft
152
- * turnRight
153
- * uncover
154
- * wipe
155
- * zoom
156
-
157
- The transitions are provided by jQuery Cycle plugin. See
158
- http://www.malsup.com/jquery/cycle/browser.html to view the effects and
159
- http://www.malsup.com/jquery/cycle/adv2.html for how to add
160
- custom effects.
161
-
162
- You can manage the presentation with the following keys:
163
-
164
- * space, cursor right: next slide
165
- * cursor left: previous slide
166
- * d: debug mode
167
- * c: table of contents (vi)
168
- * f: toggle footer
169
- * z: toggle help
170
-
171
- Real World Usage
172
- ====================
173
-
174
- So far, ShowOff has been used in the following presentations:
175
-
176
- * LinuxConf.au 2010 - Wrangling Git - Scott Chacon
177
- http://github.com/schacon/showoff-wrangling-git
178
-
179
- * SF Ruby Meetup - Resque! - Chris Wanstrath
180
- http://github.com/defunkt/sfruby-meetup-resque
181
-
182
- * RORO Sydney Talk, Feb 2010 - Beyond Actions - Dave Bolton
183
- http://github.com/lightningdb/roro-syd-beyond-actions
184
-
185
- * LRUG's February meeting - Showing Off with Ruby - Joel Chippindale
186
- http://github.com/mocoso/showing-off-with-ruby
187
-
188
- * PyCon 2010 - Hg and Git; Can't we all just get along? - Scott Chacon
189
- http://github.com/schacon/pycon-hg-git
190
-
191
- * PdxJs Tech Talk - Asynchronous Coding For My Tiny Ruby Brain - Rick Olson
192
- http://github.com/technoweenie/pdxjs-twitter-node
193
-
194
- * RORO Perth Talk - Rails 3; A Brief Introduction — Darcy Laycock
195
- http://github.com/Sutto/roro-perth-rails-3
196
-
197
- * PDXRB Tech Talk - Here's Sinatra - Jesse Cooke
198
- http://github.com/jc00ke/pdxrb_sinatra
199
-
200
- If you use it for something, please let me know so I can add it.
201
-
202
- Future Plans
203
- ====================
204
-
205
- I really want this to evolve into a dynamic presentation software server,
206
- that gives the audience a lot of interaction into the presentation -
207
- helping them decide dynamically what the content of the presentation is,
208
- ask questions without interupting the presenter, etc. I want the audience
209
- to be able to download a dynamically generated PDF of either the actual
210
- talk that was given, or all the available slides, plus supplementary
211
- material. And I want the presenter (me) to be able to push each
212
- presentation to Heroku or GitHub pages for archiving super easily.
213
-
214
- Why Not S5 or Slidy or Slidedown?
215
- =================================
216
-
217
- S5 and Slidy are really cool, and I was going to use them, but mainly I wanted
218
- something more dynamic. I wanted Slidy + Slidedown, where I could write my
219
- slideshows in a structured format in sections, where the sections could easily
220
- be moved around and between presentations and could be written in Markdown. I
221
- also like the idea of having interactive presentation system and didn't need
222
- half the features of S5/Slidy (style based print view, auto-scaling, themes,
223
- etc).
224
-
225
- Requirements
226
- ============
227
-
228
- * Ruby (duh)
229
- * Sinatra (and thus Rack)
230
- * BlueCloth
231
- * Nokogiri
232
- * json
233
- * Firefox or Chrome to present