demo.html 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>reveal.js – The HTML Presentation Framework</title>
  6. <meta
  7. name="description"
  8. content="A framework for easily creating beautiful presentations using HTML"
  9. />
  10. <meta name="author" content="Hakim El Hattab" />
  11. <meta name="mobile-web-app-capable" content="yes" />
  12. <meta name="mobile-web-app-status-bar-style" content="black-translucent" />
  13. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  14. <link rel="stylesheet" href="dist/reset.css" />
  15. <link rel="stylesheet" href="dist/reveal.css" />
  16. <link rel="stylesheet" href="dist/theme/black.css" id="theme" />
  17. <!-- Theme used for syntax highlighting of code -->
  18. <link rel="stylesheet" href="dist/plugin/highlight/monokai.css" />
  19. </head>
  20. <body>
  21. <div class="reveal">
  22. <!-- Any section element inside of this container is displayed as a slide -->
  23. <div class="slides">
  24. <section>
  25. <a href="https://revealjs.com">
  26. <img
  27. src="https://static.slid.es/reveal/logo-v1/reveal-white-text.svg"
  28. alt="reveal.js logo"
  29. style="height: 180px; margin: 0 auto 4rem auto; background: transparent"
  30. class="demo-logo"
  31. />
  32. </a>
  33. <h3>The HTML Presentation Framework</h3>
  34. <p>
  35. <small
  36. >Created by <a href="http://hakim.se">Hakim El Hattab</a> and
  37. <a href="https://github.com/hakimel/reveal.js/graphs/contributors"
  38. >contributors</a
  39. ></small
  40. >
  41. </p>
  42. </section>
  43. <section>
  44. <h2>Hello There</h2>
  45. <p>
  46. reveal.js enables you to create beautiful interactive slide decks using HTML. This
  47. presentation will show you examples of what it can do.
  48. </p>
  49. </section>
  50. <!-- Example of nested vertical slides -->
  51. <section>
  52. <section>
  53. <h2>Vertical Slides</h2>
  54. <p>Slides can be nested inside of each other.</p>
  55. <p>Use the <em>Space</em> key to navigate through all slides.</p>
  56. <br />
  57. <a href="#/2/1" class="navigate-down">
  58. <img
  59. class="r-frame"
  60. style="background: rgba(255, 255, 255, 0.1)"
  61. width="178"
  62. height="238"
  63. data-src="https://static.slid.es/reveal/arrow.png"
  64. alt="Down arrow"
  65. />
  66. </a>
  67. </section>
  68. <section>
  69. <h2>Basement Level 1</h2>
  70. <p>
  71. Nested slides are useful for adding additional detail underneath a high level
  72. horizontal slide.
  73. </p>
  74. </section>
  75. <section>
  76. <h2>Basement Level 2</h2>
  77. <p>That's it, time to go back up.</p>
  78. <br />
  79. <a href="#/2">
  80. <img
  81. class="r-frame"
  82. style="background: rgba(255, 255, 255, 0.1); transform: rotate(180deg)"
  83. width="178"
  84. height="238"
  85. data-src="https://static.slid.es/reveal/arrow.png"
  86. alt="Up arrow"
  87. />
  88. </a>
  89. </section>
  90. </section>
  91. <section>
  92. <h2>Slides</h2>
  93. <p>
  94. Not a coder? Not a problem. There's a fully-featured visual editor for authoring these,
  95. try it out at <a href="https://slides.com" target="_blank">https://slides.com</a>.
  96. </p>
  97. </section>
  98. <section data-visibility="hidden">
  99. <h2>Hidden Slides</h2>
  100. <p>
  101. This slide is visible in the source, but hidden when the presentation is viewed. You can
  102. show all hidden slides by setting the `showHiddenSlides` config option to `true`.
  103. </p>
  104. </section>
  105. <section data-auto-animate>
  106. <h2 data-id="code-title">Pretty Code</h2>
  107. <pre data-id="code-animation"><code class="hljs javascript" data-trim data-line-numbers>
  108. import React, { useState } from 'react';
  109. function Example() {
  110. const [count, setCount] = useState(0);
  111. return (
  112. ...
  113. );
  114. }
  115. </code></pre>
  116. <p>
  117. Code syntax highlighting courtesy of
  118. <a href="https://highlightjs.org/usage/">highlight.js</a>.
  119. </p>
  120. </section>
  121. <section data-auto-animate>
  122. <h2 data-id="code-title">With Animations</h2>
  123. <pre
  124. data-id="code-animation"
  125. ><code class="hljs javascript" data-trim data-line-numbers="|4,8-11|17|22-24"><script type="text/template">
  126. import React, { useState } from 'react';
  127. function Example() {
  128. const [count, setCount] = useState(0);
  129. return (
  130. <div>
  131. <p>You clicked {count} times</p>
  132. <button onClick={() => setCount(count + 1)}>
  133. Click me
  134. </button>
  135. </div>
  136. );
  137. }
  138. function SecondExample() {
  139. const [count, setCount] = useState(0);
  140. return (
  141. <div>
  142. <p>You clicked {count} times</p>
  143. <button onClick={() => setCount(count + 1)}>
  144. Click me
  145. </button>
  146. </div>
  147. );
  148. }
  149. </script></code></pre>
  150. </section>
  151. <section>
  152. <h2>Point of View</h2>
  153. <p>Press <strong>ESC</strong> to enter the slide overview.</p>
  154. <p>
  155. Hold down the <strong>alt</strong> key (<strong>ctrl</strong> in Linux) and click on any
  156. element to zoom towards it using <a href="http://lab.hakim.se/zoom-js">zoom.js</a>.
  157. Click again to zoom back out.
  158. </p>
  159. <p>(NOTE: Use ctrl + click in Linux.)</p>
  160. </section>
  161. <section
  162. data-auto-animate
  163. data-auto-animate-easing="cubic-bezier(0.770, 0.000, 0.175, 1.000)"
  164. >
  165. <h2>Auto-Animate</h2>
  166. <p>
  167. Automatically animate matching elements across slides with
  168. <a href="https://revealjs.com/auto-animate/">Auto-Animate</a>.
  169. </p>
  170. <div class="r-hstack justify-center">
  171. <div
  172. data-id="box1"
  173. style="background: #999; width: 50px; height: 50px; margin: 10px; border-radius: 5px"
  174. ></div>
  175. <div
  176. data-id="box2"
  177. style="background: #999; width: 50px; height: 50px; margin: 10px; border-radius: 5px"
  178. ></div>
  179. <div
  180. data-id="box3"
  181. style="background: #999; width: 50px; height: 50px; margin: 10px; border-radius: 5px"
  182. ></div>
  183. </div>
  184. </section>
  185. <section
  186. data-auto-animate
  187. data-auto-animate-easing="cubic-bezier(0.770, 0.000, 0.175, 1.000)"
  188. >
  189. <div class="r-hstack justify-center">
  190. <div
  191. data-id="box1"
  192. data-auto-animate-delay="0"
  193. style="background: cyan; width: 150px; height: 100px; margin: 10px"
  194. ></div>
  195. <div
  196. data-id="box2"
  197. data-auto-animate-delay="0.1"
  198. style="background: magenta; width: 150px; height: 100px; margin: 10px"
  199. ></div>
  200. <div
  201. data-id="box3"
  202. data-auto-animate-delay="0.2"
  203. style="background: yellow; width: 150px; height: 100px; margin: 10px"
  204. ></div>
  205. </div>
  206. <h2 style="margin-top: 20px">Auto-Animate</h2>
  207. </section>
  208. <section
  209. data-auto-animate
  210. data-auto-animate-easing="cubic-bezier(0.770, 0.000, 0.175, 1.000)"
  211. >
  212. <div class="r-stack">
  213. <div data-id="box1" style="background: cyan; width: 300px; height: 300px"></div>
  214. <div data-id="box2" style="background: magenta; width: 200px; height: 200px"></div>
  215. <div data-id="box3" style="background: yellow; width: 100px; height: 100px"></div>
  216. </div>
  217. <h2 style="margin-top: 20px">Auto-Animate</h2>
  218. </section>
  219. <section>
  220. <h2>Touch Optimized</h2>
  221. <p>
  222. Presentations look great on touch devices, like mobile phones and tablets. Simply swipe
  223. through your slides.
  224. </p>
  225. </section>
  226. <section data-markdown>
  227. <script type="text/template">
  228. ## Markdown Support
  229. Write content using inline or external Markdown.
  230. Instructions and more info available in the [docs](https://revealjs.com/markdown/).
  231. ```html []
  232. <section data-markdown>
  233. ## Markdown Support
  234. Write content using inline or external Markdown.
  235. Instructions and more info available in the [docs](https://revealjs.com/markdown/).
  236. </section>
  237. ```
  238. </script>
  239. </section>
  240. <section>
  241. <h2>Lightbox</h2>
  242. Turn any element into a <a href="https://revealjs.com/lightbox/">lightbox</a> using <strong>data‑preview‑image</strong> & <strong>data‑preview‑video</strong>.
  243. <div class="r-hstack" style="gap: 2rem;">
  244. <div>
  245. <pre style="font-size: 12px; width: 100%"><code class="html" data-trim>
  246. &lt;img src="image.png" data-preview-image="image.png"&gt;
  247. </code></pre>
  248. <img src="https://static.slid.es/logo/v2/slides-symbol-1024x1024.png" height="100" data-preview-image>
  249. </div>
  250. <div>
  251. <pre style="font-size: 12px; width: 100%"><code class="html" data-trim>
  252. &lt;img src="video.png" data-preview-video="video.mp4"&gt;
  253. </code></pre>
  254. <img src="https://static.slid.es/site/homepage/v1/homepage-video-editor.png" height="100" data-preview-video="https://static.slid.es/site/homepage/v1/homepage-video-editor.mp4">
  255. </div>
  256. </div>
  257. </section>
  258. <section>
  259. <p>Add the <code>r-fit-text</code> class to auto-size text</p>
  260. <h2 class="r-fit-text">FIT TEXT</h2>
  261. </section>
  262. <section>
  263. <section id="fragments">
  264. <h2>Fragments</h2>
  265. <p>Hit the next arrow...</p>
  266. <p class="fragment">... to step through ...</p>
  267. <p>
  268. <span class="fragment">... a</span> <span class="fragment">fragmented</span>
  269. <span class="fragment">slide.</span>
  270. </p>
  271. <aside class="notes">
  272. This slide has fragments which are also stepped through in the notes window.
  273. </aside>
  274. </section>
  275. <section>
  276. <h2>Fragment Styles</h2>
  277. <p>There's different types of fragments, like:</p>
  278. <p class="fragment grow">grow</p>
  279. <p class="fragment shrink">shrink</p>
  280. <p class="fragment fade-out">fade-out</p>
  281. <p>
  282. <span style="display: inline-block" class="fragment fade-right">fade-right, </span>
  283. <span style="display: inline-block" class="fragment fade-up">up, </span>
  284. <span style="display: inline-block" class="fragment fade-down">down, </span>
  285. <span style="display: inline-block" class="fragment fade-left">left</span>
  286. </p>
  287. <p class="fragment fade-in-then-out">fade-in-then-out</p>
  288. <p class="fragment fade-in-then-semi-out">fade-in-then-semi-out</p>
  289. <p>
  290. Highlight <span class="fragment highlight-red">red</span>
  291. <span class="fragment highlight-blue">blue</span>
  292. <span class="fragment highlight-green">green</span>
  293. </p>
  294. </section>
  295. </section>
  296. <section id="transitions">
  297. <h2>Transition Styles</h2>
  298. <p>
  299. You can select from different transitions, like: <br />
  300. <a href="?transition=none#/transitions">None</a> -
  301. <a href="?transition=fade#/transitions">Fade</a> -
  302. <a href="?transition=slide#/transitions">Slide</a> -
  303. <a href="?transition=convex#/transitions">Convex</a> -
  304. <a href="?transition=concave#/transitions">Concave</a> -
  305. <a href="?transition=zoom#/transitions">Zoom</a>
  306. </p>
  307. </section>
  308. <section id="themes">
  309. <h2>Themes</h2>
  310. <p>
  311. reveal.js comes with a few themes built in: <br />
  312. <!-- Hacks to swap themes after the page has loaded. Not flexible and only intended for the reveal.js demo deck. -->
  313. <a
  314. href="#/themes"
  315. onclick="document.getElementById('theme').setAttribute('href','dist/theme/black.css'); return false;"
  316. >Black (default)</a
  317. >
  318. -
  319. <a
  320. href="#/themes"
  321. onclick="document.getElementById('theme').setAttribute('href','dist/theme/white.css'); return false;"
  322. >White</a
  323. >
  324. -
  325. <a
  326. href="#/themes"
  327. onclick="document.getElementById('theme').setAttribute('href','dist/theme/league.css'); return false;"
  328. >League</a
  329. >
  330. -
  331. <a
  332. href="#/themes"
  333. onclick="document.getElementById('theme').setAttribute('href','dist/theme/sky.css'); return false;"
  334. >Sky</a
  335. >
  336. -
  337. <a
  338. href="#/themes"
  339. onclick="document.getElementById('theme').setAttribute('href','dist/theme/beige.css'); return false;"
  340. >Beige</a
  341. >
  342. -
  343. <a
  344. href="#/themes"
  345. onclick="document.getElementById('theme').setAttribute('href','dist/theme/simple.css'); return false;"
  346. >Simple</a
  347. >
  348. <br />
  349. <a
  350. href="#/themes"
  351. onclick="document.getElementById('theme').setAttribute('href','dist/theme/serif.css'); return false;"
  352. >Serif</a
  353. >
  354. -
  355. <a
  356. href="#/themes"
  357. onclick="document.getElementById('theme').setAttribute('href','dist/theme/blood.css'); return false;"
  358. >Blood</a
  359. >
  360. -
  361. <a
  362. href="#/themes"
  363. onclick="document.getElementById('theme').setAttribute('href','dist/theme/night.css'); return false;"
  364. >Night</a
  365. >
  366. -
  367. <a
  368. href="#/themes"
  369. onclick="document.getElementById('theme').setAttribute('href','dist/theme/moon.css'); return false;"
  370. >Moon</a
  371. >
  372. -
  373. <a
  374. href="#/themes"
  375. onclick="document.getElementById('theme').setAttribute('href','dist/theme/solarized.css'); return false;"
  376. >Solarized</a
  377. >
  378. </p>
  379. </section>
  380. <section>
  381. <section data-background="#dddddd">
  382. <h2>Slide Backgrounds</h2>
  383. <p>
  384. Set <code>data-background="#dddddd"</code> on a slide to change the background color.
  385. All CSS color formats are supported.
  386. </p>
  387. <a href="#" class="navigate-down">
  388. <img
  389. class="r-frame"
  390. style="background: rgba(255, 255, 255, 0.1)"
  391. width="178"
  392. height="238"
  393. data-src="https://static.slid.es/reveal/arrow.png"
  394. alt="Down arrow"
  395. />
  396. </a>
  397. </section>
  398. <section data-background-gradient="linear-gradient(to bottom, #283b95, #17b2c3)">
  399. <h2>Gradient Backgrounds</h2>
  400. <pre><code class="hljs html wrap">&lt;section data-background-gradient=
  401. "linear-gradient(to bottom, #ddd, #191919)"&gt;</code></pre>
  402. </section>
  403. <section data-background="https://static.slid.es/reveal/image-placeholder.png">
  404. <h2>Image Backgrounds</h2>
  405. <pre><code class="hljs html">&lt;section data-background="image.png"&gt;</code></pre>
  406. </section>
  407. <section
  408. data-background="https://static.slid.es/reveal/image-placeholder.png"
  409. data-background-repeat="repeat"
  410. data-background-size="100px"
  411. >
  412. <h2>Tiled Backgrounds</h2>
  413. <pre><code class="hljs html" style="word-wrap: break-word;">&lt;section data-background="image.png" data-background-repeat="repeat" data-background-size="100px"&gt;</code></pre>
  414. </section>
  415. <section
  416. data-background-video="https://static.slid.es/site/homepage/v1/homepage-video-editor.mp4"
  417. data-background-color="#000000"
  418. >
  419. <div style="background-color: rgba(0, 0, 0, 0.9); color: #fff; padding: 20px">
  420. <h2>Video Backgrounds</h2>
  421. <pre><code class="hljs html" style="word-wrap: break-word;">&lt;section data-background-video="video.mp4,video.webm"&gt;</code></pre>
  422. </div>
  423. </section>
  424. <section data-background="http://i.giphy.com/90F8aUepslB84.gif">
  425. <h2>... and GIFs!</h2>
  426. </section>
  427. </section>
  428. <section
  429. data-transition="slide"
  430. data-background="#4d7e65"
  431. data-background-transition="zoom"
  432. >
  433. <h2>Background Transitions</h2>
  434. <p>
  435. Different background transitions are available via the backgroundTransition option. This
  436. one's called "zoom".
  437. </p>
  438. <pre><code class="hljs javascript">Reveal.configure({ backgroundTransition: 'zoom' })</code></pre>
  439. </section>
  440. <section
  441. data-transition="slide"
  442. data-background="#b5533c"
  443. data-background-transition="zoom"
  444. >
  445. <h2>Background Transitions</h2>
  446. <p>You can override background transitions per-slide.</p>
  447. <pre><code class="hljs html" style="word-wrap: break-word;">&lt;section data-background-transition="zoom"&gt;</code></pre>
  448. </section>
  449. <section data-background-iframe="https://hakim.se" data-background-interactive>
  450. <div
  451. style="
  452. position: absolute;
  453. width: 40%;
  454. right: 0;
  455. box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5), 0 5px 25px rgba(0, 0, 0, 0.2);
  456. background-color: rgba(0, 0, 0, 0.9);
  457. color: #fff;
  458. padding: 20px;
  459. font-size: 20px;
  460. text-align: left;
  461. "
  462. >
  463. <h2>Iframe Backgrounds</h2>
  464. <p>
  465. Since reveal.js runs on the web, you can easily embed other web content. Try
  466. interacting with the page in the background.
  467. </p>
  468. </div>
  469. </section>
  470. <section>
  471. <h2>Marvelous List</h2>
  472. <ul>
  473. <li>No order here</li>
  474. <li>Or here</li>
  475. <li>Or here</li>
  476. <li>Or here</li>
  477. </ul>
  478. </section>
  479. <section>
  480. <h2>Fantastic Ordered List</h2>
  481. <ol>
  482. <li>One is smaller than...</li>
  483. <li>Two is smaller than...</li>
  484. <li>Three!</li>
  485. </ol>
  486. </section>
  487. <section>
  488. <h2>Tabular Tables</h2>
  489. <table>
  490. <thead>
  491. <tr>
  492. <th>Item</th>
  493. <th>Value</th>
  494. <th>Quantity</th>
  495. </tr>
  496. </thead>
  497. <tbody>
  498. <tr>
  499. <td>Apples</td>
  500. <td>$1</td>
  501. <td>7</td>
  502. </tr>
  503. <tr>
  504. <td>Lemonade</td>
  505. <td>$2</td>
  506. <td>18</td>
  507. </tr>
  508. <tr>
  509. <td>Bread</td>
  510. <td>$3</td>
  511. <td>2</td>
  512. </tr>
  513. </tbody>
  514. </table>
  515. </section>
  516. <section>
  517. <h2>Clever Quotes</h2>
  518. <p>
  519. These guys come in two forms, inline:
  520. <q
  521. cite="http://searchservervirtualization.techtarget.com/definition/Our-Favorite-Technology-Quotations"
  522. >The nice thing about standards is that there are so many to choose from</q
  523. >
  524. and block:
  525. </p>
  526. <blockquote
  527. cite="http://searchservervirtualization.techtarget.com/definition/Our-Favorite-Technology-Quotations"
  528. >
  529. &ldquo;For years there has been a theory that millions of monkeys typing at random on
  530. millions of typewriters would reproduce the entire works of Shakespeare. The Internet
  531. has proven this theory to be untrue.&rdquo;
  532. </blockquote>
  533. </section>
  534. <section>
  535. <h2>Intergalactic Interconnections</h2>
  536. <p>
  537. You can link between slides internally,
  538. <a href="#/2/3">like this</a>.
  539. </p>
  540. </section>
  541. <section>
  542. <h2>Speaker View</h2>
  543. <p>
  544. There's a <a href="https://revealjs.com/speaker-view/">speaker view</a>. It includes a
  545. timer, preview of the upcoming slide as well as your speaker notes.
  546. </p>
  547. <p>Press the <em>S</em> key to try it out.</p>
  548. <aside class="notes">
  549. Oh hey, these are some notes. They'll be hidden in your presentation, but you can see
  550. them if you open the speaker notes window (hit 's' on your keyboard).
  551. </aside>
  552. </section>
  553. <section>
  554. <h2>Export to PDF</h2>
  555. <p>
  556. Presentations can be <a href="https://revealjs.com/pdf-export/">exported to PDF</a>,
  557. here's an example:
  558. </p>
  559. <iframe
  560. data-src="https://www.slideshare.net/slideshow/embed_code/42840540"
  561. width="445"
  562. height="355"
  563. frameborder="0"
  564. marginwidth="0"
  565. marginheight="0"
  566. scrolling="no"
  567. style="border: 3px solid #666; margin-bottom: 5px; max-width: 100%"
  568. allowfullscreen
  569. >
  570. </iframe>
  571. </section>
  572. <section>
  573. <h2>Global State</h2>
  574. <p>
  575. Set <code>data-state="something"</code> on a slide and <code>"something"</code>
  576. will be added as a class to the document element when the slide is open. This lets you
  577. apply broader style changes, like switching the page background.
  578. </p>
  579. </section>
  580. <section data-state="customevent">
  581. <h2>State Events</h2>
  582. <p>
  583. Additionally custom events can be triggered on a per slide basis by binding to the
  584. <code>data-state</code> name.
  585. </p>
  586. <pre><code class="javascript" data-trim contenteditable style="font-size: 18px;">
  587. Reveal.on( 'customevent', function() {
  588. console.log( '"customevent" has fired' );
  589. } );
  590. </code></pre>
  591. </section>
  592. <section>
  593. <h2>Take a Moment</h2>
  594. <p>
  595. Press B or . on your keyboard to pause the presentation. This is helpful when you're on
  596. stage and want to take distracting slides off the screen.
  597. </p>
  598. </section>
  599. <section>
  600. <h2>Much more</h2>
  601. <ul>
  602. <li>Right-to-left support</li>
  603. <li><a href="https://revealjs.com/api/">Extensive JavaScript API</a></li>
  604. <li><a href="https://revealjs.com/auto-slide/">Auto-progression</a></li>
  605. <li>
  606. <a href="https://revealjs.com/backgrounds/#parallax-background"
  607. >Parallax backgrounds</a
  608. >
  609. </li>
  610. <li><a href="https://revealjs.com/keyboard/">Custom keyboard bindings</a></li>
  611. </ul>
  612. </section>
  613. <section style="text-align: left">
  614. <h1>THE END</h1>
  615. <p>
  616. - <a href="https://slides.com">Try the online editor</a> <br />
  617. - <a href="https://github.com/hakimel/reveal.js">Source code &amp; documentation</a>
  618. </p>
  619. </section>
  620. </div>
  621. </div>
  622. <!-- Use the built assets if you want to run reveal.js without a web server -->
  623. <!--
  624. <script src="dist/reveal.js"></script>
  625. <script src="dist/plugin/zoom.js"></script>
  626. <script src="dist/plugin/notes.js"></script>
  627. <script src="dist/plugin/search.js"></script>
  628. <script src="dist/plugin/markdown.js"></script>
  629. <script src="dist/plugin/highlight.js"></script>
  630. -->
  631. <script type="module">
  632. import Reveal from 'reveal.js';
  633. import RevealZoom from 'reveal.js/plugin/zoom';
  634. import RevealNotes from 'reveal.js/plugin/notes';
  635. import RevealSearch from 'reveal.js/plugin/search';
  636. import RevealMarkdown from 'reveal.js/plugin/markdown';
  637. import RevealHighlight from 'reveal.js/plugin/highlight';
  638. // Also available as an ES module, see:
  639. // https://revealjs.com/initialization/
  640. Reveal.initialize({
  641. controls: true,
  642. progress: true,
  643. center: true,
  644. hash: true,
  645. // Learn about plugins: https://revealjs.com/plugins/
  646. plugins: [RevealZoom, RevealNotes, RevealSearch, RevealMarkdown, RevealHighlight],
  647. });
  648. </script>
  649. </body>
  650. </html>