{"id":15133010,"url":"https://github.com/vivaxy/node-reveal","last_synced_at":"2025-09-29T02:32:19.678Z","repository":{"id":54586748,"uuid":"92938065","full_name":"vivaxy/node-reveal","owner":"vivaxy","description":"🎁A reveal.js cli","archived":true,"fork":false,"pushed_at":"2024-05-24T05:45:04.000Z","size":1041,"stargazers_count":26,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-12-15T18:53:34.653Z","etag":null,"topics":["keynote","nodeppt","ppt","presentation","reveal-js","slides","socket-io"],"latest_commit_sha":null,"homepage":"https://github.com/vivaxy/node-reveal","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vivaxy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-31T11:11:24.000Z","updated_at":"2024-05-24T05:45:16.000Z","dependencies_parsed_at":"2022-08-13T20:31:39.117Z","dependency_job_id":null,"html_url":"https://github.com/vivaxy/node-reveal","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivaxy%2Fnode-reveal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivaxy%2Fnode-reveal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivaxy%2Fnode-reveal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vivaxy%2Fnode-reveal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vivaxy","download_url":"https://codeload.github.com/vivaxy/node-reveal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234415651,"owners_count":18829133,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["keynote","nodeppt","ppt","presentation","reveal-js","slides","socket-io"],"created_at":"2024-09-26T04:42:40.910Z","updated_at":"2025-09-29T02:32:14.220Z","avatar_url":"https://github.com/vivaxy.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @vivaxy/reveal\n\n![@vivaxy/reveal](assets/icons/node-reveal.jpg)\n\n🎁 A reveal.js cli\n\n[![NPM Version][npm-version-image]][npm-url]\n[![NPM Downloads][npm-downloads-image]][npm-url]\n[![MIT License][license-image]][license-url]\n[![Standard Version][standard-version-image]][standard-version-url]\n\n![screenshot-1](assets/screenshots/screenshot-1.png)\n\n## Feature\n\nBased on [reveal.js](https://github.com/hakimel/reveal.js#markdown).\n\n- Easy to setup. No cloning repositories. No template files.\n- Markdown files as slides content.\n- Sync sliding between clients.\n- Auto reload when markdown file changes.\n- Speaker view.\n- Theme config.\n- Inline html.\n\n## Notable Markdown Syntax\n\n- Use `\\r?\\n----\\r?\\n` as horizontal slides separator.\n- Use `\\r?\\n---\\r?\\n` as vertical slides separator.\n- Use `^Note:` as speaker notes separator.\n- Use `\u003c!-- .slide: data-background=\"#ff0000\" --\u003e` to customize slide styles.\n- Use `\u003c!-- .element: style=\"width: 60%;\" --\u003e` to customize element styles.\n- Use `\u003c!-- .element: class=\"fragment\" --\u003e` to create fragment.\n\n## Basic Usage\n\n### npx\n\n`npx @vivaxy/reveal server --markdown /path/to/presentation.md`\n\n### Keyboard Shortcuts\n\n- `Space`: Next\n- `Up`, `Down`, `Left`, `Right`: Navigation\n- `k`, `j`, `h`, `l`: Navigation\n- `f`: Full-screen\n- `s`: Show slide notes\n- `o`: Toggle overview\n- `.` (`Period`, `b`, `v` or `/`): Turn screen black\n- `Esc`: Escape from full-screen, or toggle overview\n- `alt + Left Click`: Toggle zoom\n- `p`, `n`: Previous and next\n\n## Advanced Usage\n\n### Commands\n\n#### `server`\n\n##### Basic Usage\n\n```sh\nreveal server \\\n    --markdown ./ppt/reveal.md \\\n    --theme solarized \\\n    --highlight-theme solarized-light \\\n    --transition slide \\\n    --port 8080 \\\n    --watch \\\n    --separator '^\\r?\\n----\\r?\\n$' \\\n    --separator-vertical '^\\r?\\n---\\r?\\n$' \\\n    --separator-notes '^Note:' \\\n    --width 1440 \\\n    --height 900 \\\n    --log-level 2 \\\n    --script 'custom.js'\n```\n\n##### Options\n\n| Name                   | Type          | Required | Default            | Description                                                         |\n| ---------------------- | ------------- | -------- | ------------------ | ------------------------------------------------------------------- |\n| `--markdown`           | string        | ✔        | N/A                | markdown file                                                       |\n| `--theme`              | string        | ✖        | `solarized`        | [`reveal.js` theme](https://revealjs.com/themes/)                   |\n| `--highlight-theme`    | string        | ✖        | `solarized-light`  | [`highlight.js` theme](https://highlightjs.org/static/demo/)        |\n| `--transition`         | string        | ✖        | `slide`            | [`reveal.js` transitions styles](https://revealjs.com/transitions/) |\n| `--port`               | number        | ✖        | `0`                | server port                                                         |\n| `--watch`              | boolean       | ✖        | `false`            | reload when markdown changed                                        |\n| `--separator`          | string        | ✖        | `^\\r?\\n----\\r?\\n$` | horizontal slides separator                                         |\n| `--separator-vertical` | string        | ✖        | `^\\r?\\n---\\r?\\n$`  | vertical slides separator                                           |\n| `--separator-notes`    | string        | ✖        | `^Note:`           | speaker notes separator                                             |\n| `--width`              | number        | ✖        | 1440               | slide width                                                         |\n| `--height`             | number        | ✖        | 900                | slide height                                                        |\n| `--log-level`          | number/string | ✖        | `2`                | [log output level](https://github.com/vivaxy/log-util#log-level)    |\n| `--script`             | string        | ✖        | ''                 | insert custom script before head                                    |\n\n### URL Parameters\n\n#### `print-pdf`\n\nUsed to print as pdf files.\n\nAdd `?print-pdf\u0026showNotes=true`, like: `http://127.0.0.1:3000/?print-pdf#/`.\n\nPress `Ctrl/Command + p` to open print dialog.\n\nUsually, `print-pdf` is used with `showNotes`, like `http://127.0.0.1:3000/?print-pdf\u0026showNotes=separate-page#/`\n\n#### `showNotes`\n\nShow speakers notes.\n\nAdd `?showNotes=true`, like: `http://127.0.0.1:3000/?showNotes=true#/`.\n\n## Support\n\nnode \u003e= v12\n\n## Change Log\n\nSee [CHANGELOG.md](CHANGELOG.md).\n\n## Prior Art\n\n- [ksky521/nodePPT](https://github.com/ksky521/nodePPT)\n- [hiroppy/fusuma](https://github.com/hiroppy/fusuma)\n- [hakimel/reveal.js](https://github.com/hakimel/reveal.js)\n- [webpro/reveal-md](https://github.com/webpro/reveal-md)\n- [int64ago/node-reveal](https://github.com/int64ago/node-reveal)\n\n[npm-version-image]: http://img.shields.io/npm/v/@vivaxy/reveal.svg?style=flat-square\n[npm-url]: https://www.npmjs.com/package/@vivaxy/reveal\n[npm-downloads-image]: https://img.shields.io/npm/dt/@vivaxy/reveal.svg?style=flat-square\n[license-image]: https://img.shields.io/npm/l/@vivaxy/reveal.svg?style=flat-square\n[license-url]: LICENSE\n[standard-version-image]: https://img.shields.io/badge/release-standard%20version-brightgreen.svg?style=flat-square\n[standard-version-url]: https://github.com/conventional-changelog/standard-version\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvivaxy%2Fnode-reveal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvivaxy%2Fnode-reveal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvivaxy%2Fnode-reveal/lists"}