Reusable Marp template for technical talks and training.
Software Engineer & Product Developer
Director of Engineering & Founder @ https://codermana.com
ex-Tarka Labs, ex-BrowserStack, ex-ThoughtWorks
What we wanted
What we got
Here you are trying to learn something, while here your brain is doing you a favor by making sure the learning doesn't stick.
Yay's in chat
Use this deck as a working scaffold. Replace the examples with your content and keep the layout classes.
Keep agenda slides short. The value is in orientation, not detail.
Section slides should reset attention and name the next idea plainly.
Use this when text needs a supporting visual.
Use images when they carry the point directly. Avoid decorative filler.
Make the important thing impossible to miss.
Good quote slides create a pause. Use them sparingly.
export function greeting(name) { return `Hello, ${name}!`; }
The marker keeps this slide synchronized with the named source region whenever the deck is built.
const audience = ["design", "engineering", "product"]; const plan = audience.map((group) => ({ group, outcome: "leave with one concrete next step", format: group === "engineering" ? "live demo" : "worked example", })); console.table(plan);
Add code-tight only when a longer, discussion-worthy listing genuinely needs the extra room.
code-tight
Keep diagrams as Mermaid source in the deck. The build creates matching SVGs for every export.
Use the body of the slide for the normal case, recommendation, or primary explanation.
Caveat: reserve this anchored note for a constraint or exception that materially changes how the audience should apply the advice.
Work in pairs for 10 minutes.
* bullets reveal one click at a time. Use plain - for lists that should appear all at once.
*
-
Code
https://github.com/CoderMana/presentation-template-marp
Slides
https://template-marp.slides.algogrit.com
deck:title:start
deck:title:end
snippet: examples/snippets/greeting.js#greeting
deck:resources:start
deck:resources:end