SSH Slides
SSH 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
.
Usage
All you need is a markdown file containing your presentation. To create a new session:
# To create a session with your own unique name
ssh -t slides.tseivan.com create personal-unique-name URL_TO_RAW_MARKDOWN
# Try out our example presentation
ssh -t slides.tseivan.com create https://raw.githubusercontent.com/ivantsepp/ssh-slides/master/example_presentation.md
You 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:
ssh -t slides.tseivan.com join SESSION_ID
# Try joining our demo presentation session
# These slides auto-advance every 10 seconds
ssh -t slides.tseivan.com join demo
Your viewers should then see the same content that you are seeing!
Navigation
As the creator of the session you can:
- To go to the next slide:
space
, right
, down
, enter
, n
, j
, l
- To go to the previous slide:
left
, up
, p
, h
, k
- To exit and finish the presentation session:
ctrl+c
, ctrl+d
, esc
, q
- Toggle between dark and light mode:
t
As the viewer of the session you can:
- To exit and leave:
ctrl+c
, ctrl+d
, esc
, q
- Toggle between dark and light mode:
t
Deploy
git clone https://github.com/ivantsepp/ssh-slides
cd ssh-slides
go build ssh-slides.go
PORT=22 ./ssh-slides 2> logs.txt &
Implementation
ssh-slides is built on top of other libraries that make it easy to write SSH apps.
Credits / Motivation / Inspiration