Building Slide Presentations with present: Presentation as Code
Linux Magazine|#262/September 2022
The Golang package present may be the key to making attractive slide presentations with less work and hassle.
ANKUR KUMAR
Building Slide Presentations with present: Presentation as Code

Creating slide presentations has been a necessary part of technical life for a long time, but creating crisp and beautiful slides using the popular traditional tools requires a lot of tedious work. I have always been intrigued by the elegant presentations in Golang community talks, but there was no clear-cut information available on how those beautiful presentations were rendered. In researching, I stumbled upon a Golang package named, not surprisingly, present [1], which renders amazing presentation slides from markup text description. For many years now, present has been my go-to tool for creating and delivering impressive presentations.

Getting Started

There is no separate installation step needed to start using the present utility. It's just a statically linked binary that is grab-and-run; there's no need to set up any other runtime dependencies. You do need the Golang compilation toolchain already set up on your machine if you want to run the present command natively. Alternatively, you can run present out of the box, provided Docker Engine is installed on your machine (which is very common nowadays). I personally took the Docker route to use present without doing any extra work. You can use the Dockerfile (Listing 1) and script (Listing 2) to fetch and run present to display your slides on your local machine.

To create a Docker image from which you can launch present, use the following command:

docker build . -t present

You can also launch the present container to serve your slides from a bind-mounted directory (e.g., files in your current directory), by executing the command:

docker run -d --rm z

-v ${PWD}/files: /src/files:ro 2

-p 58888:8888 present

This story is from the #262/September 2022 edition of Linux Magazine.

Start your 7-day Magzter GOLD free trial to access thousands of curated premium stories, and 8,500+ magazines and newspapers.

This story is from the #262/September 2022 edition of Linux Magazine.

Start your 7-day Magzter GOLD free trial to access thousands of curated premium stories, and 8,500+ magazines and newspapers.

MORE STORIES FROM LINUX MAGAZINEView All
URL filtering with Pi-hole Into the Funnel
Linux Magazine

URL filtering with Pi-hole Into the Funnel

Supporting browser plug-ins, network-based DNS blockers like Pi-hole help protect you against online tracking and unwanted content.

time-read
10+ mins  |
#274/August 2023: The Best of Small Distros
Artificial intelligence on the Raspberry Pi Learning Experience
Linux Magazine

Artificial intelligence on the Raspberry Pi Learning Experience

You don't need a powerful computer system to use Al. We show what it takes to benefit from Al on the Raspberry Pi and what tasks the small computer can handle.

time-read
7 mins  |
#274/August 2023: The Best of Small Distros
MakerSpace Manage your greenhouse with a Raspberry Pi Pico W Sheltered Growth
Linux Magazine

MakerSpace Manage your greenhouse with a Raspberry Pi Pico W Sheltered Growth

You can safely assign some greenhouse tasks to a Raspberry Pi Pico W, such as controlling ventilation, automating a heater, and opening and closing windows.

time-read
7 mins  |
#274/August 2023: The Best of Small Distros
Control Center
Linux Magazine

Control Center

Tipi gives you complete control of more than 100 applications and services. A mouse click is all it takes to install the apps.

time-read
6 mins  |
#274/August 2023: The Best of Small Distros
In One Fell Swoop
Linux Magazine

In One Fell Swoop

Topgrade detects all the package managers installed on a system and executes them one by one at the command line.

time-read
3 mins  |
#274/August 2023: The Best of Small Distros
Go Faster!
Linux Magazine

Go Faster!

The fastest way through a curve on a racetrack is along the racing line. Instead of heading for Indianapolis, Mike Schilli trains his reflexes with a desktop application written in Go, just to be on the safe side.

time-read
9 mins  |
#274/August 2023: The Best of Small Distros
Math Magic
Linux Magazine

Math Magic

MathLex lets you easily transform handwritten math formulas to digital format and use them on the web.

time-read
5 mins  |
#274/August 2023: The Best of Small Distros
Custom Repair Toolkit
Linux Magazine

Custom Repair Toolkit

You can do more with System Rescue than just repair broken systems. By adding tools and scripts, you can create a custom rescue environment that meets your needs.

time-read
8 mins  |
#274/August 2023: The Best of Small Distros
At Your Disposal
Linux Magazine

At Your Disposal

Debvm lets you quickly create a temporary virtual machine with a small memory footprint, ideal for testing scripts or mixing repositories

time-read
4 mins  |
#274/August 2023: The Best of Small Distros
A Fresh Breeze
Linux Magazine

A Fresh Breeze

Vanilla OS, an immutable filesystem, seamlessly integrates applications from other distributions with an innovative container-based package manager.

time-read
5 mins  |
#274/August 2023: The Best of Small Distros