Skip to content

Beamer Plugin Documentation (beamer)

🚀 Overview

The Beamer plugin allows developers within the microCI environment to seamlessly generate professional, high-quality presentation slides directly from structured Markdown content. Designed for technical authors, researchers, and teams needing reproducible documentation output, this plugin leverages LaTeX's powerful Beamer class structure to transform markdown files into polished PDF presentations suitable for large audiences or formal reports.

Its primary function is simplifying the complex process of presentation creation by integrating it as a native step within your microCI CI/CD pipeline.

✨ Features

Produce Great Looking Presentations using Markdown

This core feature transforms plain Markdown syntax (which must be structured according to Beamer's conventions) into fully typeset LaTeX Beamer slides, resulting in a professional PDF output. Users benefit from: * Structured Templating: Effortlessly apply consistent styling (themes, color schemes, etc.) across all slides without manual compilation effort. * Source Control Integration: Since the content lives alongside the CI configuration (.microCI.yml), presentation source files are version-controlled and reproducible builds are guaranteed. * Modular Content Generation: The ability to list multiple source markdown files (source: []) allows for breaking up a large presentation into manageable, independently editable modules (e.g., introduction, body, conclusion).

⚙️ Setup & Configuration

To utilize the Beamer plugin, you must specify the core parameters in your .microCI.yml file under the plugin: block. The plugin requires access to all source markdown files and defines the final output metadata for the presentation.

Parameters

Parameter Type Description Required? Notes
name String The name of the step in the pipeline. Yes Used for reporting purposes within microCI.
output String The filename for the resulting PDF presentation (e.g., presentation.pdf). Yes This determines the output artifact name.
source List[String] A list of paths to the source Markdown files that contain slide content. Yes Files should be ordered logically, especially if using section numbering schemes like 01-.
lang String The language used in the presentation (e.g., en-US, pt-BR). No Influences date formatting and language packages.
title String The main title displayed on the presentation's title slide. Recommended Mandatory for a complete title slide.
subtitle String A secondary subtitle for the presentation. Optional Provides context to the title.
author List[String] A list of names credited as authors. Recommended Format should be a list of strings.
institute String The name of the presenting institution/company. Optional Appears in the header or footer metadata.
date String / Date The date associated with the presentation (e.g., \today). Optional Can use LaTeX commands for dynamic dates.
Advanced
theme String Specifies the Beamer theme to be used (e.g., Madrid, Boadilla). No Overrides default styling. Check Beamer documentation for available themes.
header-includes List[String] A list of raw LaTeX packages or commands to include at the start of the document (\usepackage{...}). Optional Use this for advanced features like complex math or TikZ graphics.

💻 Examples

The following example demonstrates how to use the Beamer plugin within a typical microCI workflow to build a multi-section presentation PDF.

Configuration File: .microCI.yml (Excerpt)

steps:
  - name: Build Presentation Slides
    plugin:
      name: beamer
      output: final_tech_talk.pdf
      source: # List of source files, use the number for ordering the sections
        - 00-introduction.md
        - 01-body.md
        - 02-conclusion.md
        - 99-references.md
      lang: en-US # Presentation language: pt-BR, en-US, ...
      institute: Tech Solutions Corp
      date: April 1, 2023
      title: Mastering MicroCI Plugins
      subtitle: A Technical Deep Dive into CI/CD Automation
      author:
        - Geraldo Ribeiro
        - AI Assistant Team
      header-includes: # Custom LaTeX package inclusion
        - \usepackage{tikz}

Source File Example (01-body.md)

Content for the source files must be structured in Markdown, but will be processed by Beamer's underlying LaTeX engine.

# Section 1: Plugin Architecture {#section-plugin-architecture}

This is the main content of our body section. Every top-level heading (`#`) or second-level heading (`##`) defined within the source files becomes a slide in the final PDF.

## Key Components

The plugin architecture consists of three parts:
1. The **microCI** Runner (Execution Engine).
2. The Plugin Core (Logic layer).
3. The Beamer Renderer (Output formatter).

We are demonstrating how easy it is to integrate complex tooling into a simple CI/CD workflow.

This documentation was generated by the Documentation Generator Skill.