Skip to content

Repository files navigation

my-presentation

CI codecov Python 3.11+ MIT

A MyThingsLab My[X] tool: given a talk-request issue (topic, audience, target length), drafts a slide-by-slide outline with speaker notes, then hands that structure to MyTypster to render an actual slide deck (a Typst slide package via a templates/presentation.typ anchor) and compile it to PDF.

MyPresentation owns the narrative — what to say and how to structure a talk; MyTypster owns the rendering. The two are coupled only through the outline MyPresentation produces, so the deck's look can change without touching the slide logic.

Usage

# Draft an outline + deck for one talk issue and open the compiled-deck PR.
mypresentation draft --issue 7 --repo MyThingsLab/talks --engine claude-cli

# Cap the deck length and dry-run against the noop engine (zero tokens):
mypresentation draft --issue 7 --target-slides 12 --engine noop --no-pr

Each invocation makes exactly one Engine call — the outline. Against the default --engine noop (zero tokens), the outline degrades to the issue's own title as a single slide rather than fabricating content. Rendering and the PDF compile gate are deterministic and delegated to MyTypster.

Install (development)

python -m venv .venv && source .venv/bin/activate
pip install -e ../my-things-core -e ".[dev]"
pytest

See CLAUDE.md for the tool's seams and HARNESS.md for the inherited build rules.

License

MIT — see LICENSE.

About

MyThingsLab tool — drafts a slide-by-slide talk outline with speaker notes from an issue, hands it to MyTypster to render and compile a Typst slide deck.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages