[External Plugin]: MarkdStage

Author: runceelCreated Sep 16, 2026Updated Sep 16, 2026
Labelsexternal-pluginready-for-reviewexternal-plugin-canvas

Plugin name

markdstage

Short description

Create, edit, present, and export Markdown slides in a GitHub Copilot Canvas.

GitHub repository

runceel/MarkdStage

Plugin path inside the repository

.github/plugin/markdstage

Ref to review

v4.2.4

Commit SHA to review

34621f7217fbf2a10499c229229df4c86241095d

Version

4.2.4

License identifier

MIT

Author name

Kazuki Ota

Author URL

https://github.com/runceel

Homepage URL

No response

Keywords

canvas copilot-canvas markdown slides presentation

Additional notes for reviewers

Quick review scenario

Once the plugin is installed, the whole flow can be driven from chat:

  1. Ask Copilot:

    "Create github-copilot-app.md with about 10 MarkdStage-format slides that give an overview of the GitHub Copilot app, include at least one Architecture DSL diagram and speaker notes, then open that file in the MarkdStage canvas, check the layout for clipped slides, and show the result in the fixed 16:9 output preview."

    Copilot writes github-copilot-app.md, opens the MarkdStage Canvas on slide 1, and uses inspect_layout to report clipping and Architecture measurements against the 1280x720 output surface, fixing any overflow before showing the deck. More controls > Output preview toggles the same fixed 16:9 surface by hand. Navigate with the on-canvas buttons, arrow keys, or the slide list.

  2. Move to the slide that contains the Architecture diagram.

  3. Choose More controls > Shape editing. The Architecture editor canvas opens for that diagram: move and resize nodes, add shapes, connect them, then Save to write the change back into the Markdown source.

  4. Back in the Canvas, exercise the presentation and output paths:

    • More controls > Presenter view shows the current slide, the next slide, and speaker notes side by side, with its own Previous / Next / Slide list controls.
    • Start presentation in the presenter view opens a synchronized 1280x720 audience window (F11 for full screen on Windows); End presentation closes it. More controls > External window opens the same audience window directly from slide view.
    • More controls > Export PDF writes a 16:9 PDF.
    • More controls > Export PowerPoint... writes a hybrid editable .pptx, where diagram shapes, connectors, and text stay editable PowerPoint objects and speaker notes become slide notes.

Presentation and export reuse an already-installed Edge, Chrome, or Chromium browser; the extension never downloads one.

Implementation notes

  • This plugin is a Canvas extension. The tree at .github/plugin/markdstage/com.github.copilot/extensions/markdstage is generated from the canonical Extension source at .github/extensions/markdstage and verified byte-for-byte in CI (npm run awesome:check).
  • Besides Mermaid, the extension ships a stable Architecture DSL v1 (JSON in an architecture fence) with a published JSON Schema, plus a dedicated diagram editor canvas, so diagram positions, sizes, containers, and connectors stay deterministic across export.
  • The extension runs locally, requires no network service and no API key, binds loopback HTTP servers to 127.0.0.1, and bundles its own vendor assets with no runtime npm dependencies.

Submission checklist

  • The plugin lives in a public GitHub repository.
  • The ref and/or sha I provided is immutable (release tag and/or full 40-character commit SHA), not a branch.
  • This submission follows this repository's contribution, security, and responsible AI policies.
  • This plugin is not already listed in the Awesome Copilot marketplace.