![Building Slide Presentations with present: Presentation as Code Building Slide Presentations with present: Presentation as Code](https://cdn.magzter.com/1591653320/1658330553/articles/glfdiPpBk1660046155580/BUILDING-SLIDE-PRESENTATIONS-WITH-PRESENT-PRESENTATION-AS-CODE.jpg)
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
この記事は Linux Magazine の #262/September 2022 版に掲載されています。
7 日間の Magzter GOLD 無料トライアルを開始して、何千もの厳選されたプレミアム ストーリー、9,000 以上の雑誌や新聞にアクセスしてください。
すでに購読者です ? サインイン
この記事は Linux Magazine の #262/September 2022 版に掲載されています。
7 日間の Magzter GOLD 無料トライアルを開始して、何千もの厳選されたプレミアム ストーリー、9,000 以上の雑誌や新聞にアクセスしてください。
すでに購読者です? サインイン
![MADDOG'S DOGHOUSE MADDOG'S DOGHOUSE](https://reseuro.magzter.com/100x125/articles/22172/1873364/OiPbBLiCf1731931364392/MADDOGS-DOGHOUSE.jpg)
MADDOG'S DOGHOUSE
The stakeholder approach of open source broadens the pool of who can access, influence, and benefit from information technologies.
![MakerSpace MakerSpace](https://reseuro.magzter.com/100x125/articles/22172/1873364/lAgP1rXIR1731930161606/MAKERSPACE.jpg)
MakerSpace
Rust, a potential successor to C/C++, claims to solve some memory safety issues while maintaining high performance. We look at Rust on embedded systems, where memory safety, concurrency, and security are equally important
![In Harmony In Harmony](https://reseuro.magzter.com/100x125/articles/22172/1873364/NphokqPGB1731929447728/IN-HARMONY.jpg)
In Harmony
Using the Go Interface mechanism, Mike demonstrates its practical application with a refresh program for local copies of Git repositories.
![Monkey Business Monkey Business](https://reseuro.magzter.com/100x125/articles/22172/1873364/39MNY79wa1731928816720/MONKEY-BUSINESS.jpg)
Monkey Business
Even small changes in a web page can improve the browsing experience. Your preferred web browser provides all the tools you need to inject JavaScript to adapt the page. You just need a browser with its debugging tools, some knowledge of scripting, and the browser extension Tampermonkey.
![Smarter Navigation Smarter Navigation](https://reseuro.magzter.com/100x125/articles/22172/1873364/3OUsU-DxZ1731928559979/SMARTER-NAVIGATION.jpg)
Smarter Navigation
Zoxide, a modern version of cd, lets you navigate long directory paths with less typing.
![Through the Back Door Through the Back Door](https://reseuro.magzter.com/100x125/articles/22172/1873364/yqzMIanRe1731926043521/THROUGH-THE-BACK-DOOR.jpg)
Through the Back Door
Cybercriminals are increasingly discovering Linux and adapting malware previously designed for Windows systems. We take you inside the Linux version of a famous Windows ransomware tool.
![Page Pulse Page Pulse](https://reseuro.magzter.com/100x125/articles/22172/1873364/Rzb8r_0tE1731924676177/PAGE-PULSE.jpg)
Page Pulse
Do you want to be alerted when a product is back in stock on your favorite online store? Do you want to know when a website without an RSS feed gets an update? With changedetection.io, you can stay up-to-date on website changes.
![Arco Linux Arco Linux](https://reseuro.magzter.com/100x125/articles/22172/1873364/tNrDta1Ob1731924406541/ARCO-LINUX.jpg)
Arco Linux
ArcoLinux, an Arch derivative, offers easier installs while educating users about Arch Linux along the way.
![Ghost Coder Ghost Coder](https://reseuro.magzter.com/100x125/articles/22172/1873364/-HdBj9ixL1731923755757/GHOST-CODER.jpg)
Ghost Coder
Artificial intelligence is increasingly supporting programmers in their daily work. How effective are these tools? What are the dangers? And how can you benefit from Al-assisted development today?
![Zack's Kernel News Zack's Kernel News](https://reseuro.magzter.com/100x125/articles/22172/1873364/0535mUqY_1731923184685/ZACKS-KERNEL-NEWS.jpg)
Zack's Kernel News
Chronicler Zack Brown reports on the latest news, views, dilemmas, and developments within the Linux kernel community.