{"id":13813679,"url":"https://github.com/ivantsepp/ssh-slides","last_synced_at":"2025-06-22T19:37:42.777Z","repository":{"id":74786542,"uuid":"472829013","full_name":"ivantsepp/ssh-slides","owner":"ivantsepp","description":"Terminal-based Presentations Over SSH","archived":false,"fork":false,"pushed_at":"2023-07-10T12:05:38.000Z","size":521,"stargazers_count":123,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-21T16:52:02.902Z","etag":null,"topics":["presentation","slides","terminal"],"latest_commit_sha":null,"homepage":"ssh://slides.tseivan.com","language":"Go","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/ivantsepp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2022-03-22T15:28:35.000Z","updated_at":"2025-04-14T01:56:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"f66a2ce4-73ee-4369-a663-feb1002b491b","html_url":"https://github.com/ivantsepp/ssh-slides","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ivantsepp/ssh-slides","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivantsepp%2Fssh-slides","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivantsepp%2Fssh-slides/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivantsepp%2Fssh-slides/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivantsepp%2Fssh-slides/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ivantsepp","download_url":"https://codeload.github.com/ivantsepp/ssh-slides/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ivantsepp%2Fssh-slides/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261354155,"owners_count":23146364,"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":["presentation","slides","terminal"],"created_at":"2024-08-04T04:01:25.611Z","updated_at":"2025-06-22T19:37:37.764Z","avatar_url":"https://github.com/ivantsepp.png","language":"Go","funding_links":[],"categories":["Go","\u003ca name=\"office\"\u003e\u003c/a\u003eOffice tools","Table of Contents"],"sub_categories":[],"readme":"# SSH Slides\n\nSSH Slides is an SSH server that hosts terminal-based presentations where your viewers can follow along in their own terminals. This service is currently located at `slides.tseivan.com`.\n\n![Screenshot of SSH Slides](./screenshot.png \"Screenshot of SSH Slides\")\n\n## Usage\n\nAll you need is a markdown file containing your presentation. To create a new session:\n\n```bash\n# To create a session with your own unique name\nssh -t slides.tseivan.com create personal-unique-name URL_TO_RAW_MARKDOWN\n\n# Try out our example presentation\nssh -t slides.tseivan.com create https://raw.githubusercontent.com/ivantsepp/ssh-slides/master/example_presentation.md\n```\n\nYou will then be entered into a new presentation session where you have control of the slides. Your viewers can then join your session by running the following in their own terminals:\n\n```bash\nssh -t slides.tseivan.com join SESSION_ID\n\n# Try joining our demo presentation session\n# These slides auto-advance every 10 seconds\nssh -t slides.tseivan.com join demo\n```\n\nYour viewers should then see the same content that you are seeing!\n\n### Navigation\n\nAs the creator of the session you can:\n\n1. To go to the next slide: `space`, `right`, `down`, `enter`, `n`, `j`, `l`\n2. To go to the previous slide: `left`, `up`, `p`, `h`, `k`\n3. To exit and finish the presentation session: `ctrl+c`, `ctrl+d`, `esc`, `q`\n4. Toggle between dark and light mode: `t`\n\nAs the viewer of the session you can:\n1. To exit and leave: `ctrl+c`, `ctrl+d`, `esc`, `q`\n2. Toggle between dark and light mode: `t`\n\n### Deploy\n\n```bash\ngit clone https://github.com/ivantsepp/ssh-slides\ncd ssh-slides\ngo build ssh-slides.go\nPORT=22 ./ssh-slides 2\u003e logs.txt \u0026\n```\n\n### Implementation\n\nssh-slides is built on top of other libraries that make it easy to write SSH apps.\n\n- [charmbracelet/wish](https://github.com/charmbracelet/wish)\n- [charmbracelet/bubbletea](https://github.com/charmbracelet/bubbletea)\n- [gliderlabs/ssh](https://github.com/gliderlabs/ssh)\n\n\n### Credits / Motivation / Inspiration\n\n- Amazing talk on SSH - https://vimeo.com/54505525\n- [maaslalani/slides](https://github.com/maaslalani/slides)\n- [fxn/tkn](https://github.com/fxn/tkn)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fivantsepp%2Fssh-slides","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fivantsepp%2Fssh-slides","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fivantsepp%2Fssh-slides/lists"}