top | item 24324099

A terminal-based presentation tool with colors and effects

342 points| submeta | 5 years ago |github.com | reply

49 comments

order
[+] vortex_ape|5 years ago|reply
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

[+] vortex_ape|5 years ago|reply
PS: I've been wanting to build this ever since I watched Brandon Rhodes' North Bay Python 2017 keynote! https://www.youtube.com/watch?v=rrMnmLyYjU8

It's a talk about (in Brandon's words) ASCII art animation, software architecture, the mysteries of UNIX terminal settings, and the glories of Plain Text. You should totally check it out!

[+] TedDoesntTalk|5 years ago|reply
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!
[+] szszrk|5 years ago|reply
Hey! It's super cool, but can't work it out how to run this on a few environemnts. Tried Ubuntu and centos, always get ModuleNotFoundError: No module named 'dataclasses'.

Centos 8.2, Python 3.6.8, present Version: 0.4.0, pip 9.0.3. Tried with global and user install in pip. Not really a python dev, more of a user :)

[+] swyx|5 years ago|reply
could i ask about more details on shipping this? what made you start working on it? how long did you work on it to an initial state? have you had any practical work-related side benefits of doing something like this, or is it pure hobby?
[+] BOOSTERHIDROGEN|5 years ago|reply
I cant running this apps

  \appdata\local\programs\python\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
[+] stojano|5 years ago|reply
love it... thanks
[+] mbo|5 years ago|reply
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, a similar tool for Scala, supports this by pressing `r` on any slide - all code will be evaluated into the REPL.

[+] JakeWesorick|5 years ago|reply
Nice! Something similar but maybe not so extreme is Deck Set. https://www.deckset.com/

Write markdown and it does the design for you.

[+] lazzlazzlazz|5 years ago|reply
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

[+] vortex_ape|5 years ago|reply
I love how DeckSet looks but it only works on macOS :\
[+] andy99|5 years ago|reply
Made me think of this that I have used previously: 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|5 years ago|reply
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... 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 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!

[+] catmistake|5 years ago|reply
Those special f/x are really slick. Always nice to see new Terminal development.
[+] captn3m0|5 years ago|reply
Used it last week for a presentation. Loved it.
[+] vortex_ape|5 years ago|reply
Thanks again! I loved that presentation! Looking forward to a longer one :D
[+] Pirate-of-SV|5 years ago|reply
What tool(s) did you use to record the example gifs in the readme?
[+] vortex_ape|5 years ago|reply
I used 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!