---
title: SuperDeck documentation
description: Create beautiful presentations with Flutter and Markdown
---

# SuperDeck

Create presentations in Flutter using Markdown.

<img src="https://github.com/btwld/superdeck/assets/435833/42ec88e9-d3d9-4c52-bbf9-5a2809cca257" alt="SuperDeck Screenshot" />

## [View live demo](https://superdeck-dev.web.app)

## Overview

SuperDeck is a Flutter presentation framework that combines Markdown simplicity with Flutter's UI power. Create flexible, multi-column layouts with custom widgets and interactive content using a block-based architecture.

### Key components

- **CLI Tool** - Configure and build presentations
- **Flutter Package** - UI components and presentation runtime
- **Block System** - Flexible layouts with 3 core block types
- **Mix Styling** - Comprehensive theming system

## Core features

- **3 Block Types** - `@block` (content), `@section` (layout), `@widget` (custom components)
- **Built-in Widgets** - `image`, `dartpad`, `qrcode`
- **CLI Commands** - `setup`, `build`, `version`
- **Markdown Support** - Full CommonMark with GitHub-style alerts
- **Custom Widgets** - Extensible widget system
- **Platforms** - Web and desktop
- **Live Development** - Watch mode with hot reload

## Architecture

- **Core** (`packages/core/`) - Data models and domain logic
- **Builder** (`packages/builder/`) - Markdown parsing and build pipeline
- **CLI** (`packages/cli/`) - Command-line interface
- **SuperDeck** (`packages/superdeck/`) - Flutter UI components and Mix styling

## Quick start

1. **Install the CLI**:
   ```bash
   dart pub global activate superdeck_cli
   ```

2. **Create a Flutter app**:
   ```bash
   flutter create my_presentation
   cd my_presentation
   ```

3. **Configure SuperDeck**:
   ```bash
   superdeck setup
   flutter pub add superdeck
   flutter pub add --dev superdeck_cli
   ```

4. **Wire your app and add slides**:
   - Update `lib/main.dart` to initialize and run `SuperDeckApp`
   - Add `slides.md` in the project root

5. **Build your slides**:
   ```bash
   dart run superdeck_cli:main build
   ```

6. **Run your app**:
   ```bash
   flutter run
   ```

## Documentation structure

- **[Getting Started](/getting-started)** - Complete setup-and-run guide
- **[Tutorials](/tutorials/first-presentation)** - Step-by-step learning paths
- **[How-to Guides](/guides/superdeck-overview)** - Task-focused instructions
- **[Reference](/reference/deck-options)** - Complete API documentation
- **[Examples](/examples)** - Real-world use cases

## What makes SuperDeck different

- **Flutter-Native** - Built for Flutter developers
- **Block-Based** - Flexible layouts beyond traditional slides
- **Developer-Friendly** - CLI tools, hot reload, debugging
- **Extensible** - Custom widgets and comprehensive styling
- **Production-Ready** - Web and desktop deployment
