Skip to main content

present

Documentation Status image image image Run on Repl.it

A terminal-based presentation tool with colors and effects.

You can also play a codio (pre-recorded code block) on a slide.

present is built on asciimatics, and it works with Python>=3.7.

Check out the gallery to see what everyone is making with present! You can add your slides by simply opening an issue.

Installation

You can simply use pip to install present:

$ pip install present

Usage

$ present sample.md

Some controls:

  • Quit: q
  • Previous slide: b, Left arrow, Page Up
  • Next slide: n, Space bar, Right arrow, Page Down

At the end, you can press r to restart the presentation.

Syntax

Slides follow Markdown syntax. You can check out the sample slides for reference.

Note: Some things aren't supported yet:

  • Effects and colors on the same slide.
  • Effects and code on the same slide.

Separator

Each slide can be separated with a ---.

Slide 1

---

Slide 2

Headers

Level 1 headings become figlets, level 2 headings get underlined with -, and level 3 headings become bold.

# Heading 1

## Heading 2

### Heading 3

Text

This is normal text

This is **bold text**

This is `inline code`

This is a [link](www.google.com)

As Kanye West said:

> We're living the future so
> the present is our past.

Lists

Ordered lists become unordered lists automatically.

- Item 1
    - Item 1a
    - Item 1b
    - Item 1c
- Item 2
    - Item 2a

Images

Image paths are relative to the directory where your slides are kept, and where you invoke present.

![RC](images/recurse.png)

Note: You can use high resolution images and tweak the terminal font size to get the best results.

Code blocks

```
import os

os.getcwd()
```

Codios

Codios are pre-recorded playable code blocks which can be useful for live demos. You can find out how to write one in the codio section of the documentation.

![codio](codio.yml)

Style

Each slide can be styled with foreground / background colors and effects. By default, slides are black on white with no effects. You can add style to a slide by adding a comment at the beginning of the slide (after the slide separator):

Slide 1

---
<!-- fg=black bg=yellow -->

Slide 2

---
<!-- effect=explosions -->

Slide 3

Colors: black, red, green, yellow, blue, magenta, cyan, white.

Effects: fireworks, explosions, stars, matrix, plasma. More coming soon!

Contributing

The Contributor's Guide has detailed information about contributing issues, documentation, code, and tests.

Versioning

present uses Semantic Versioning. For the available versions, see the tags on the GitHub repository.

License

This project is licensed under the Apache License, see the LICENSE file for details.

Metadata

Release files for present 0.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for present 0.6.0
File Size Uploaded
present-0.6.0.tar.gz 13.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for present 0.6.0
File Interpreter ABI Platform
present-0.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 29.3 kB

Release files / present-0.6.0.tar.gz

Download URL present-0.6.0.tar.gz
Size 13.1 kB
Tags Source
SHA-256 checksum
How to use checksums
97d5b92f82c3f6a468deb2c192077623f6836a3fae7226f951883e5f845883a7
BLAKE2b-256 checksum
How to use checksums
f91bb0bed47dec0557a83ea0e475e52796d7c31f3ab83009b44b041af1526740
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

Release files / present-0.6.0-py3-none-any.whl

Download URL present-0.6.0-py3-none-any.whl
Size 16.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c261bbfdd1223c075efeacbc4a0e21834e1994c922d511899046d00433c9669a
BLAKE2b-256 checksum
How to use checksums
155fad234a541fd8e10458fc61a54a4a37a21b3abcc4d70077a89719d0a53179
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page