Skip to content

malleroid/slides

Repository files navigation

slides

A monorepo for managing presentation decks and custom Slidev themes.

Directory Structure

.
├── themes/   # Custom Slidev themes
│   ├── paiza/
│   ├── academic/
│   ├── dracula/
│   ├── frankfurt/
│   ├── vscode-dark/
│   └── emerald-synth/
├── decks/    # Presentation decks
├── .docker/
│   └── traefik/  # Reverse proxy config
├── Dockerfile
├── compose.yaml         # Main compose (traefik, dev, includes)
├── compose.themes.yaml  # Theme services
└── compose.decks.yaml   # Deck services

Prerequisites

Getting Started

1. Generate TLS certificates

mkcert -install && mkdir -p .docker/traefik/certs && mkcert -cert-file .docker/traefik/certs/_wildcard.slides.localhost.pem -key-file .docker/traefik/certs/_wildcard.slides.localhost-key.pem "*.slides.localhost"

2. Start Traefik

docker compose up -d

3. Launch a deck or theme preview

# Theme preview
docker compose --profile paiza-theme up -d

# Deck
docker compose --profile lt-devin up -d

4. Stop services

docker compose down --remove-orphans

Access via HTTPS:

Profile URL
paiza-theme https://paiza-theme.slides.localhost
academic-theme https://academic-theme.slides.localhost
dracula-theme https://dracula-theme.slides.localhost
frankfurt-theme https://frankfurt-theme.slides.localhost
vscode-dark-theme https://vscode-dark-theme.slides.localhost
cobalt-theme https://cobalt-theme.slides.localhost
emerald-synth-theme https://emerald-synth-theme.slides.localhost
lt-devin https://lt-devin.slides.localhost
self-intro https://self-intro.slides.localhost
(dashboard) https://traefik.slides.localhost

Ad-hoc development

docker compose --profile dev up -d
docker compose exec dev sh

Themes

Theme Description
paiza Corporate theme for paiza presentations
academic Academic presentation theme
dracula Dracula color scheme theme
frankfurt Frankfurt-style academic theme
vscode-dark VS Code inspired dark theme
cobalt Deep cobalt blue framed layouts
emerald-synth Synthwave/cyberpunk dark theme with neon glow

Creating a New Deck

  1. Create a directory under decks/
  2. Add a package.json with @slidev/cli as a dev dependency
  3. Reference the theme via relative path in frontmatter:
---
theme: ../../themes/paiza
---
  1. Add a service block to compose.decks.yaml with a profile and Traefik labels

Creating a New Theme

  1. Create a directory under themes/
  2. Add a service block to compose.themes.yaml with a profile and Traefik labels

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors