
A terminal-based presentation tool with colors and effects - submeta
https://github.com/vinayak-mehta/present
======
vortex_ape
Hey, author here! Just wanted to add that you can write your slides using
Markdown (most of its features are supported).

Also reposting my comment from the asciimatics post that was here yesterday:

I made this on top of asciimatics, which is awesome! I had a lot of fun making
this thanks to all the effects asciimatics already has.

I was also able to extend an internal asciimatics class to add a feature for
pre-recorded playable code blocks. It lets you play code in your terminal
presentation like someone's typing it! You can learn more about it here:
[https://present.readthedocs.io/en/latest/codio.html](https://present.readthedocs.io/en/latest/codio.html)

~~~
TedDoesntTalk
How did you do the matrix raining code in the demo? I did not see it in the
examples. I use an mp4 of that as a screen saver but would love it in terminal
instead!

~~~
vortex_ape
You can use the matrix effect by adding `<!-- effect=matrix -->` to the top of
your slide! :)

These effects are supported right now: fireworks, explosions, stars, matrix,
plasma. I plan to add more asciimatics effects soon!

~~~
ksaj
I'm hoping for <\-- effect=gol --> for a Game of Life simulation. For whatever
reason, it comes up in my talks often. It seems I exude geekness acme whenever
I talk about hacking and self-propagating code.

~~~
vortex_ape
That would be awesome! I'll work on it and add it some time! Opened
[https://github.com/vinayak-
mehta/present/issues/45](https://github.com/vinayak-mehta/present/issues/45)
to track it :D

------
mbo
There's a major missed opportunity here - you can create codeblocks but
there's no way to _run_ the codeblocks.

[https://github.com/marconilanna/REPLesent](https://github.com/marconilanna/REPLesent),
a similar tool for Scala, supports this by pressing `r` on any slide - all
code will be evaluated into the REPL.

~~~
geek_at
Also imagine they'd combine their codebase with shellshare (live streaming
shell)

[https://shellshare.net/](https://shellshare.net/)

------
JakeWesorick
Nice! Something similar but maybe not so extreme is Deck Set.
[https://www.deckset.com/](https://www.deckset.com/)

Write markdown and it does the design for you.

~~~
lazzlazzlazz
DeckSet is great, but is quite limited in terms of allowing theme
customization. If they allowed themes to be modified directly with CSS — or
better, YAML/TOML/JSOn, that'd be excellent.

I've been looking very closely at Marp[1], which is a engineer-focused
solution to this.

[^1] [https://github.com/marp-team/marp](https://github.com/marp-team/marp)

------
wodenokoto
During this years juliacon there was an absolutely amazing termnial based
presentation on building terminal based UI's:

[https://www.youtube.com/watch?v=-TASx67pphw](https://www.youtube.com/watch?v=-TASx67pphw)

~~~
vortex_ape
Thanks for posting, this is such a cool and informative talk! I love the
typewriter animation :D

------
andy99
Made me think of this that I have used previously:
[http://suso.suso.org/xulu/Shellshow](http://suso.suso.org/xulu/Shellshow)

I had played with writing a pandoc filter that would add formatting escape
sequences based on markdown, your tool does a better job than where I got to.

One thing I want in a tool like this is to be able to display ascii charts
like from gnuplot, which is why I liked the simplicity of Shellshow. I will
have to dig in to see if this is possible, if not I expect it would be easy to
add.

~~~
vortex_ape
Thanks for pointing me to Shellshow, I hadn't heard of it before, it looks
cool! I'll look into it in detail sometime this week and see if I can add some
of its features to `present`.

> One thing I want in a tool like this is to be able to display ascii charts
> like from gnuplot, which is why I liked the simplicity of Shellshow. I will
> have to dig in to see if this is possible, if not I expect it would be easy
> to add.

I've thought about adding charting features too! Asciimatics supports
barcharts:
[https://asciimatics.readthedocs.io/en/stable/asciimatics.htm...](https://asciimatics.readthedocs.io/en/stable/asciimatics.html#asciimatics.renderers.BarChart)
and lets you extend classes to build other types of charts too.

Would you like to open an issue and describe this feature a bit in detail?
[https://github.com/vinayak-mehta/present/issues](https://github.com/vinayak-
mehta/present/issues) For example, what should the API look like, should it
pick up data from a csv file and load it up into a barchart etc. I would love
to work on this when I find time!

------
dheera
I wrote a terminal graphics library! It might be interesting to use something
like this to be able to embed graphics into terminal-based presentations:

[https://github.com/dheera/python-
termgraphics](https://github.com/dheera/python-termgraphics)

~~~
vortex_ape
Termgraphics looks awesome, I'll try it out this week!

------
mrshu
There is also patat
([https://github.com/jaspervdj/patat](https://github.com/jaspervdj/patat))
that does a similar thing.

It does not have effects, but it can do colors and has many other features one
would expect from a presentation tool. It has also been around for a while, it
is rather stable and written in Haskell. Many Linux distributions already have
it in their repositories
([https://github.com/jaspervdj/patat#installation](https://github.com/jaspervdj/patat#installation)).

Worth trying out as well!

------
catmistake
Those special f/x are really slick. Always nice to see new Terminal
development.

------
amasad
Very cool. Runs on repl.it nicely: [https://repl.it/@amasad/terminal-
present](https://repl.it/@amasad/terminal-present)

~~~
vortex_ape
Thanks for adding the repl.it badge!

------
dividedbyzero
Can it do a PDF export? I'm usually providing a PDF of my slides with some
comments, as people pretty much always request that if I don't.

~~~
vortex_ape
Not currently. A lot of people have requested that feature, I'll look into how
that can be done! Tracking it here: [https://github.com/vinayak-
mehta/present/issues/43](https://github.com/vinayak-mehta/present/issues/43)

------
captn3m0
Used it last week for a presentation. Loved it.

~~~
vortex_ape
Thanks again! I loved that presentation! Looking forward to a longer one :D

------
Pirate-of-SV
What tool(s) did you use to record the example gifs in the readme?

~~~
vortex_ape
I used [https://github.com/phw/peek](https://github.com/phw/peek) but I plan
on trying asciinema / terminalizer soon.

I was able to record `present` with asciinema, just need to see how nicely it
renders into a GIF!

~~~
auscompgeek
You may be interested in
[https://nbedos.github.io/termtosvg/](https://nbedos.github.io/termtosvg/) \-
it can take asciinema recordings and turn them into animated SVGs.

