# Rustikon 2026 Presentation

**Why I Needed Rust, Finally: Infrastructure Automation I Can Sleep On**

Presentation slides built with [Slidev](https://sli.dev/)

## Setup

### Prerequisites
- Node.js 16+ (or Deno/Bun)
- npm or pnpm

### Installation

```bash
cd rustikon-2026-slides
npm install
```

### Development

Run the development server with hot reload:

```bash
npm run dev
```

Open `http://localhost:3030` in your browser.

### Build

Build slides for distribution:

```bash
npm run build
```

Output will be in `dist/`

### Export

Export as PDF:

```bash
npm run export:pdf
```

Export as PNG (per slide):

```bash
npm run export:png
```

## Structure

```
.
├── slides.md           # All slides content
├── slidev.config.ts    # Slidev configuration
├── theme/
│   └── dark-rust.css   # Custom dark theme with Rust branding
├── public/             # Static assets (images, etc.)
└── package.json
```

## Customization

### Theme

The presentation uses a custom dark theme with Rust orange accents (`#CE422B`).

Edit `theme/dark-rust.css` to customize colors, fonts, or styles.

### Content

All slide content is in `slides.md`. Follow [Slidev markdown syntax](https://sli.dev/guide/syntax.html).

### Images

Place images in `public/` directory and reference them in slides.md:

```markdown
![Alt text](/image-name.png)
```

## Presentation Notes

Speaker notes are included at the end of `slides.md` under each slide's frontmatter or in the notes section.

Press `p` during presentation to see presenter view with notes.

## Keyboard Shortcuts

- `f` — Fullscreen
- `p` — Presenter view
- `g` — Go to slide
- `o` — Overview
- `j/k` — Next/previous slide
- `ESC` — Exit presentation

## Deployment

To host on GitHub Pages:

1. Build the slides: `npm run build`
2. Push `dist/` to your GitHub Pages branch

Or use Slidev's built-in deployment options.

## Author

Jesús Pérez Lorenzo

Rustikon 2026
