Пишу движок для презентации в браузере, рассчитываю на Opera, FF и Safari с плагином, хотя последние и не переключаются в projection…
— Вадим Макеев (@pepelsbey) 6 апреля 2010
6 апреля 2010 года
Опубликовал движок для презентаций «Shower» на GitHub'е: http://github.com/pepelsbey/shower — вопросы и предложения в Issues.
— Вадим Макеев (@pepelsbey) 30 октября 2010
4:55 утра 30 октября 2010 года
Вторая версия началась 4 мая 2014.
Сейчас от старой версии мало что осталось.
// styles/_defaults.scss
$color: #43A047;
$black: mix(black, white, 87%);
$dark: mix(black, white, 54%);
$medium: mix(black, white, 38%);
$light: mix(black, white, 26%);
$back: #EEE;
Executable File 1066 lines (876 sloc) 24.2 KB
modules.require
modules.define
modules.isDefined
shower.modules = modules.create()
modules.define('loader', provide => {
$.script(
'http://my-plugin-url',
(Plugin) => provide(Plugin)
);
});
Что такое Ymodules: bit.ly/ymodules
shower.modules.define('shower-plugin', [
'depend'
], (provide, depend) => {
…
provide(plugin);
});
class MyPlugin {
constructor(shower, options) {
…
shower.container.enterFullscreen();
}
}
setupListeners() {
this._shower.player.events
.on(['next', 'prev'], this._onSlideChange, this)
}
on(events, callback[, context])
off(events, callback[, context])
offAll()
shower.modules.require([
'shower'
], showerGlobal => {
showerGlobal.plugins.add('shower-plugin');
})
<section class="slide">
<ymap center="33, 55" zoom=15>
<placemark/>
</ymap>
</section>
npm i shower-map
shower.getSlides()
slide.layout.getElement()
element.querySelectorAll('ymap')
<section class="slide markdown">
## markdown plugin
- one
- two
- three
</section>
npm i shower-markdown
::: slide
## markdown plugin
- one
- two
- three
Используется: shower.container.getElement()
npm i shower-markdown
<section class="slide"
data-speech-bookmark="африка"
>
<img src="pictures/africa.jpg">
</section>
Приходилось ли вам показывать презентацию в распределенных командах?
// Запускаем сервер.
npm i shower-mirror-server && \
KEY=1234 run shower-mirror
// Указываем адрес сервера
<script src="server/socket.io/socket.io.js">
http://site/index.html ?key=1234
shower.player.events // activate
globalShower.plugins.get(plugin, shower);
plugin.events // next
+ Socket.IO
Денис Хананеин
Презентация: zloy.me/talks/shower