Skip to main content

Prezentprogramo

Prezentprogramo is a tool to make impress.js presentations from reStructuredText. For a quick explanation, see one of my slides or check list of them https://yoosofan.github.io/slide/

Based on Hovercraft!

Features

  • Write your presentations in a text markup language. No slow, limiting GUI, no annoying HTML!

  • Pan, rotate and zoom in 3D, with automatic repositioning of slides!

  • A presenter console with notes and slide previews!

  • Support for showing mathematical formulas.

  • Styling is easy with CSS.

  • The slide show generated is in HTML, so you only need a web browser to show it.

  • Easy sharing, as it can be put up on a website for anyone to see!

Full documentation of Hovercraft is available at https://hovercraft.readthedocs.io/en/latest/ , and also in the documentation subdirectory.

Installation

Simple but not the best way to install

pip3 install prezentprogramo

uv

uv is a Python package and project manager. Using uv has multiple benefits including installing any version of python3 and related packages on it. uv can reduce many conflicts and problems you may face if you use pip alone. While it is not necessary but I would recommend to use it instead of pip. At first, install curl

curl -LsSf https://astral.sh/uv/install.sh | sh
uv python install 3.14
uv venv --python 3.14 myvenv
source myvenv/bin/activate
uv tool install prezentprogramo

Usage

cd prezentprogramo/docs/examples/
prezentprogramo cpu.rst

It will automatically open browser if it is possible. If the browser did not open then run your browser and type the following link in your browser.

http://127.0.0.1: 8000

Prezentprogramo creates a directory by the name of slide if it is possible. However, it is possible to create a seperate directory too. For Example you can use my computer courses slide to test it

cd projects/slide/os
prezentprogramo cpu.rst cpu_htmls/

Convert to pdf

Install google-chrome

prezentprogramo cpu.rst --pdf cpu.pdf

Old methods for hovercraft

Run hovercraft

cd os
prezentprogramo mem.rst

###  Run browser

### Type 127.0.0.1:8000

Mothods

Screen Shot

  1. Take screen shot by operating system
    1. for ubuntu-mate use short cut < Shift + PrtSc >

    2. Select the area

    3. Save

  2. Or use browser screenshot
    1. like https://browsernative.com/screenshot-extension/

  3. convert images to pdf
    1. Install tools lilke image magic

    2. sudo apt-get install imagemagick –fix-missing

    3. link https://help.ubuntu.com/community/ImageMagick

    4. convert *.png mem1.pdf

dectape: Convert to pdf

https://github.com/astefanutti/decktape

https://awesomeopensource.com/project/astefanutti/decktape?categoryPage=29

Installation
sudo apt update
sudo apt install nodejs
sudo npm install -g npm@latest
sudo npm install puppeteer --unsafe-perm
# export PUPPETEER_SKIP_DOWNLOAD='true'  #npm i puppeteer
sudo npm install -g decktape
npm install decktape
`npm bin`/decktape

https://github.com/puppeteer/puppeteer/issues/5656#issuecomment-641412196 https://stackoverflow.com/questions/63187371/puppeteer-not-able-to-install-error-failed-to-set-up-chromium-r782078-set-pu

ls -l /etc/apt/sources.list.d/
ls -l /usr/share/keyrings/

rm  /usr/share/keyrings/nodesource.gpg
rm /etc/apt/sources.list.d/nodesource.list.save

https://unix.stackexchange.com/questions/541939/whats-going-wrong-with-my-attempt-to-install-upgrade-node-js-in-linux

# Using Ubuntu
curl -k -fsSL https://deb.nodesource.com/setup_15.x | sudo -E bash -
curl -k -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodej

sudo apt-get remove nodejs npm node
sudo apt-get purge nodejs

sudo rm -rf /usr/local/bin/npm
sudo rm -rf /usr/local/share/man/man1/node*
sudo rm -rf /usr/local/lib/dtrace/node.d
sudo rm -rf ~/.npm
sudo rm -rf ~/.node-gyp
sudo rm -rf /opt/local/bin/node
sudo rm -rf opt/local/include/node
sudo rm -rf /opt/local/lib/node_modules

sudo rm -rf /usr/local/lib/node*
sudo rm -rf /usr/local/include/node*
sudo rm -rf /usr/local/bin/node
Instructions
`npm bin`/decktape --slides 1-70 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/os922.pdf
decktape --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/os915.pdf
decktape --slides 1,111-273 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/os913.pdf
decktape --slides 1-120 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/     ~/830.pdf
decktape --slides 1-120 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/     ~/d/830.pdf
decktape --slides 1-111 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/     ~/901.pdf
decktape impress http://127.0.0.1:8000/ ~/test/f4.pdf
decktape --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/test/dectape/f1.pdf
decktape --slides 1,2,3 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/test/dectape/f2.pdf
decktape --slides 1,13,116,117 --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/test/dectape/f3.pdf
decktape --chrome-path /usr/bin/google-chrome impress http://127.0.0.1:8000/ ~/test/dectape/f4.pdf
Errors “decktape” “TimeoutError:” Navigation timeout of 20000 ms exceeded
Samples
# Capture a single slide
$ decktape --slides 1
# Capture a series of slides
$ decktape --slides 1,3,5
# Capture a range of slides
$ decktape --slides 1-10
# Capture a combination of slides and ranges
$ decktape --slides 1,2,5-10
$ decktape --slides 1,2,5-10 -s 1024x768

Metadata

Release files for Prezentprogramo 3.3

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

Source distribution (sdist)

Source distribution for Prezentprogramo 3.3
File Size Uploaded
prezentprogramo-3.3.tar.gz 6.4 MB Details

Built distribution (wheel)

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

Total release size: 12.8 MB

Release files / prezentprogramo-3.3.tar.gz

Download URL prezentprogramo-3.3.tar.gz
Size 6.4 MB
Tags Source
SHA-256 checksum
How to use checksums
c7b52ed5b0d4cc195260135c269278558ac3f4d2357dbe31be18bb0a044d9b07
BLAKE2b-256 checksum
How to use checksums
4de04b6ffa77caab2a28e61e3ec460f820c2bcdc7912db641b28eb1d38345a47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release files / prezentprogramo-3.3-py3-none-any.whl

Download URL prezentprogramo-3.3-py3-none-any.whl
Size 6.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6513f0a198481cec5c6aec09418e4f1ee93f6e0c81d995981a689cd307b05a75
BLAKE2b-256 checksum
How to use checksums
21ff08bf4beee0f629ec3e0a6a8738b29d35d4b3bef78f3598700623483fb62b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release history Release notifications | RSS feed

This release

3.3 This release

2 release files

3.2

2 release files

3.1

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