{"id":14037307,"url":"https://github.com/nicoespeon/vscode-slides","last_synced_at":"2025-04-09T17:24:12.170Z","repository":{"id":36255519,"uuid":"216935446","full_name":"nicoespeon/vscode-slides","owner":"nicoespeon","description":"👩‍🏫 VS Code as a presentation tool","archived":false,"fork":false,"pushed_at":"2024-10-30T01:31:05.000Z","size":4913,"stargazers_count":64,"open_issues_count":8,"forks_count":5,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-02T13:56:21.648Z","etag":null,"topics":["conference","meetup","slides","talk","vscode","vscode-extension"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=nicoespeon.slides","language":"TypeScript","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/nicoespeon.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["nicoespeon"]}},"created_at":"2019-10-23T00:39:37.000Z","updated_at":"2025-03-26T15:31:32.000Z","dependencies_parsed_at":"2023-12-29T19:22:40.132Z","dependency_job_id":"ada02d3a-4419-4685-81f5-1bde1e35bb9e","html_url":"https://github.com/nicoespeon/vscode-slides","commit_stats":{"total_commits":190,"total_committers":9,"mean_commits":21.11111111111111,"dds":0.5263157894736843,"last_synced_commit":"def4908208ed10861ef6145d1cd21ec1348242fa"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicoespeon%2Fvscode-slides","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicoespeon%2Fvscode-slides/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicoespeon%2Fvscode-slides/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicoespeon%2Fvscode-slides/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nicoespeon","download_url":"https://codeload.github.com/nicoespeon/vscode-slides/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248075555,"owners_count":21043614,"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":["conference","meetup","slides","talk","vscode","vscode-extension"],"created_at":"2024-08-12T03:02:41.404Z","updated_at":"2025-04-09T17:24:12.141Z","avatar_url":"https://github.com/nicoespeon.png","language":"TypeScript","funding_links":["https://github.com/sponsors/nicoespeon"],"categories":["TypeScript"],"sub_categories":[],"readme":"# 👩‍🏫 VS Code Slides\n\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-8-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\nSlides is a Visual Studio Code extension that helps you use your editor as a presentation tool.\n\n📝 [Read the blog post](https://www.nicoespeon.com/en/2019/11/vscode-as-a-presentation-tool/)\n\n![Demo of Slides features][slides-showcase]\n\nThis is inspired from [André Staltz's post][andre-staltz-post] where he explained how you can use VS Code **only** to give a pleasant, \"live coding\"-like presentation.\n\n[\u003e Give a feedback][create-new-issue]\n\n## Features\n\n- ⚡ Toggle Slides mode with a shortcut\n- 👐 Handy shortcuts to navigate between slides\n- 📊 Preview Mardown files for better presentations\n- 🎨 Optimized settings for presentation\n- 👩‍🎨 Customize settings to your needs\n\n### Toggle Slides mode\n\nUse `Ctrl Alt P` (`⌘ ⌥ P` on Mac) to toggle Slides mode.\n\n**When you activate Slides**, a few things happen:\n\n- Your settings got stored, so they can be reset\n- Settings get replaced with others that are optimized for presentation\n- All files are open in the alphabetical order, as tabs\n- You can navigate between each tab with convenient shortcuts (see below)\n\n**When you deactivate Slides**, your original settings get restored.\n\n### Navigate between tabs (when Slides is active)\n\n| Shortcut           | Shortcut on Mac | Operation            |\n| ------------------ | --------------- | -------------------- |\n| `Ctrl Shift Alt →` | `⌘ →`           | Go to next slide     |\n| `Ctrl Shift Alt ←` | `⌘ ←`           | Go to previous slide |\n| `Ctrl Esc`         | `⌘ Esc`         | Deactivate Slides    |\n\nYou can also re-use _Toggle Slides mode_ to deactivate Slides.\n\n\u003e If you want to change the default shortcuts, go in VS Code **Preferences \u003e Keyboard Shortcuts** and search for `slides`. You should be able to override them.\n\n## Pre-requisite\n\nSlides is opinionated. By default, you'll need to install:\n\n1. [The \"SF Mono\" font][recommended-font] on your machine\n\nIf you don't want to use these, you can override Slides settings with the `slides.vscodeSettings` configuration.\n\n## Configuration\n\nHere are the default settings of Slides you can override in your VS Code settings.\n\n| Name                          | Description                           | Default               |\n| ----------------------------- | ------------------------------------- | --------------------- |\n| `slides.previewMarkdownFiles` | Preview Markdown files                | `false`               |\n| `slides.folder`               | Relative path to slides folder        | Workspace root folder |\n| `slides.vscodeSettings`       | Custom settings for presentation mode | {}                    |\n\nIn your VS Code `settings.json` you can set any valid VS Code setting you want to apply in presentation mode.\n\nFor example:\n\n```json\n{\n  \"slides.vscodeSettings\": {\n    \"workbench.colorTheme\": \"Frantic Light (rainglow)\",\n\n    \"editor.fontFamily\": \"Arial\",\n    \"terminal.integrated.fontFamily\": \"Arial\",\n\n    \"editor.fontSize\": 42\n  }\n}\n```\n\nHave a look at [Slides default settings](https://github.com/nicoespeon/vscode-slides/blob/master/src/settings.ts) to learn more.\n\n## Installation\n\n1. Click on the Extensions icon (usually on the left-hand side of your editor).\n1. Search for \"Slides\".\n1. Find the extension in the list and click the install button.\n\n## How to use best\n\n1. Create one file per \"slide\"\n1. Name them by number: `01.md`, `02.js`, `03.01.md`, `03.02.png`, etc.\n1. Toggle Slides before you start your talk 🎤\n\n### Tips\n\n- Prefer to keep coding files empty, or with easy content supposed to be known.\n- Leverage `slides.previewMarkdownFiles` setting to render Markdown files for increased readability.\n- Leverage `slides.folder` setting to regroup your slides into a folder for better cohesion.\n\n## FAQ\n\n### The plugin seems to have screwed up my editor settings, help!\n\nWhen you enter presentation mode, the plugin writes a `.vscode/settings.json` file in your project. If there was an existing one, it stores it in cache.\n\nWhen you exit presentation mode, the plugin should restore the previous `settings.json` (if there was one).\n\nIf you get stuck with the presentation style, even though you're not in presentation mode anymore (e.g. you've uninstalled the plugin), you can get rid of the `.vscode/settings.json` file to get back to normal. You may lose the original project `settings.json` if that happens, but I rarely saw that happen.\n\nRelated issues: [#19](https://github.com/nicoespeon/vscode-slides/issues/19) and [#39](https://github.com/nicoespeon/vscode-slides/issues/39)\n\n## Release Notes\n\n[Have a look at our CHANGELOG][changelog] to get the details of all changes between versions.\n\n### Versioning\n\nWe follow [SemVer][semver] convention for versionning.\n\nThat means our releases use the following format:\n\n```\n\u003cmajor\u003e.\u003cminor\u003e.\u003cpatch\u003e\n```\n\n- Breaking changes bump `\u003cmajor\u003e` (and reset `\u003cminor\u003e` \u0026 `\u003cpatch\u003e`)\n- Backward compatible changes bump `\u003cminor\u003e` (and reset `\u003cpatch\u003e`)\n- Bug fixes bump `\u003cpatch\u003e`\n\n## Contributing\n\n### [Contributing Guide][contributing]\n\nRead our [contributing guide][contributing] to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to the extension.\n\n### [Good First Issues][good-first-issues]\n\nTo help you get your feet wet and become familiar with our contribution process, we have a list of [good first issues][good-first-issues] that contains things with a relatively limited scope. This is a great place to get started!\n\n## Contributors\n\nThanks goes to these wonderful people ([emoji key][all-contributors-emoji]):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://nicoespeon.com/\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/1094774?v=4?s=100\" width=\"100px;\" alt=\"Nicolas Carlo\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eNicolas Carlo\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-nicoespeon\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/commits?author=nicoespeon\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/commits?author=nicoespeon\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/pulls?q=is%3Apr+reviewed-by%3Anicoespeon\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#question-nicoespeon\" title=\"Answering Questions\"\u003e💬\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/divinebovine\"\u003e\u003cimg src=\"https://github.com/divinebovine.png?s=100\" width=\"100px;\" alt=\"Daniel Dickerson\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDaniel Dickerson\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nicoespeon/vscode-slides/issues?q=author%3Adivinebovine\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/commits?author=divinebovine\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/etbrow\"\u003e\u003cimg src=\"https://github.com/etbrow.png?s=100\" width=\"100px;\" alt=\"Ethan Brown\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eEthan Brown\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-etbrow\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/commits?author=etbrow\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/joeparislbcc\"\u003e\u003cimg src=\"https://github.com/joeparislbcc.png?s=100\" width=\"100px;\" alt=\"Joe Paris\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJoe Paris\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nicoespeon/vscode-slides/issues?q=author%3Ajoeparislbcc\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/omnoms\"\u003e\u003cimg src=\"https://github.com/omnoms.png?s=100\" width=\"100px;\" alt=\"Marko V\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMarko V\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-omnoms\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/commits?author=omnoms\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://lucasfeliciano.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/968014?v=4?s=100\" width=\"100px;\" alt=\"Lucas Feliciano\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLucas Feliciano\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nicoespeon/vscode-slides/commits?author=lucasfeliciano\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/nicoespeon/vscode-slides/issues?q=author%3Alucasfeliciano\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://www.theherk.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/3605078?v=4?s=100\" width=\"100px;\" alt=\"Adam Sherwood\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAdam Sherwood\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-theherk\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/timvahlbrock\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/25803754?v=4?s=100\" width=\"100px;\" alt=\"Tim Vahlbrock\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eTim Vahlbrock\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/nicoespeon/vscode-slides/issues?q=author%3Atimvahlbrock\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors][all-contributors] specification.\n\nContributions of any kind are welcome!\n\n## License\n\n💁 [MIT][license]\n\n\u003c!-- Links --\u003e\n\n[andre-staltz-post]: https://staltz.com/your-ide-as-a-presentation-tool.html\n[change-keybindings]: https://code.visualstudio.com/docs/getstarted/keybindings\n[semver]: http://semver.org/\n[all-contributors]: https://allcontributors.org\n[all-contributors-emoji]: https://allcontributors.org/docs/en/emoji-key\n[recommended-font]: https://github.com/ZulwiyozaPutra/SF-Mono-Font\n\n\u003c!-- Repo links --\u003e\n\n[changelog]: https://github.com/nicoespeon/vscode-slides/blob/master/CHANGELOG.md\n[contributing]: https://github.com/nicoespeon/vscode-slides/blob/master/CONTRIBUTING.md\n[license]: https://github.com/nicoespeon/vscode-slides/blob/master/LICENSE.md\n[good-first-issues]: https://github.com/nicoespeon/vscode-slides/issues?q=is%3Aissue+is%3Aopen+label%3A%22%3Awave%3A+Good+first+issue%22\n[create-new-issue]: https://github.com/nicoespeon/vscode-slides/issues/new/choose\n\n\u003c!-- Assets --\u003e\n\n[slides-showcase]: https://github.com/nicoespeon/vscode-slides/blob/master/assets/showcase.gif?raw=true\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicoespeon%2Fvscode-slides","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnicoespeon%2Fvscode-slides","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicoespeon%2Fvscode-slides/lists"}