Dropp PowerPoint, bruk terminalen: «99,9% bør ikke bruke den»

Tuitorial er perfekt for alle som holder tekniske presentasjoner, eller bare elsker terminalen, hevder utvikleren.

Tuitorial er spesielt laget for å presentere kode, noe PowerPoint ikke er like godt egnet til, ifølge utvikleren bak prosjektet.
Tuitorial er spesielt laget for å presentere kode, noe PowerPoint ikke er like godt egnet til, ifølge utvikleren bak prosjektet. Vis mer

– Jeg bygget et terminalbasert verktøy for kodepresentasjoner, fordi PowerPoint var for smertefullt, skriver utvikleren Bas Nijholt på Reddit.

Nijholt står bak Tuitorial, et nytt terminalbasert verktøy som gjør det mulig å lage interaktive presentasjoner som kjører inne i terminalvinduet.

Utvikleren, som til daglig jobber med utvikling på kvantedatamaskiner hos IonQ, mener nemlig at tradisjonelle presentasjonsverktøy som PowerPoint ikke er bra nok hvis du skal lage presentasjoner der kode står i fokus.

– 99,9 % bør ikke bruke Tuitorial. Men de 0,1 % som bør det, vil elske den, skriver han.

Tuitorial er derimot for de 0,1 prosentene som:

  • Holder tekniske presentasjoner eller arrangerer workshops
  • Elsker terminalbaserte verktøy
  • Er lei av å kopiere den samme koden inn på mange PowerPoint-slides
  • Vil ha versjonskontrollerte, reproduserbare "tutorials"
«99,9 % bør ikke bruke Tuitorial. Men de 0,1 % som bør det, vil elske den.»

Definer presentasjonen med kode

Tuitorial er åpen kildekode (MIT-lisens) og skrevet i Python.

Når du har laget en presentasjon og startet den opp fra terminalen, vises den i "fullskjerm" inne i terminalvinduet, og du kan bruke piltastene for å navigere deg rundt i presentasjonen.

Presentasjonene lages enten ved å skrive litt Python-kode, eller du kan opprette en YAML-fil der du setter opp alt.

Det å vise frem kodesnutter er noe av det viktigste med Tuitorial, og det er derfor innebygget støtte for syntaksutheving for en masse forskjellige programmeringsspråk. Det er også støtte for å bruke bilder og markdown i presentasjonene.

Her kan du se en video av hvordan en typisk Tuitorial-presentasjon kan se ut.

Du skriver litt Python-kode eller YAML for å definere hvordan alle lysbildene dine skal se ut, og for hvert lysbilde eventuelle trinn du kan bla igjennom med pil opp og ned.

Du kan bruke RegEx til å utheve for eksempel en funksjon i koden på skjermen, slik:

from tuitorial import Chapter, Step, TuitorialApp, Focus
from rich.style import Style

# Your code to present
code = '''
def hello(name: str) -> str:
    return f"Hello, {name}!"

def main():
    print(hello("World"))
'''

# Define tutorial steps
steps = [
    Step(
        "Function Definition",
        [Focus.regex(r"def hello.*:$", style="bold yellow")]
    ),
    Step(
        "Return Statement",
        [Focus.literal('return f"Hello, {name}!"', style="bold green")]
    ),
    Step(
        "Main Function",
        [Focus.range(code.find("def main"), len(code), style="bold blue")]
    ),
]

# Create a chapter
chapter = Chapter("Basic Example", code, steps)

# Run the tutorial
app = TuitorialApp([chapter])
app.run()

Slik setter du opp Tuitorial

Du installerer Tuitorial ganske enkelt med Pythons pakkeverktøy pip:

pip install tuitorial

Hvis du har Python-verktøyet uv installert kan du få opp en demopresentasjon laget med Tuitorial ved å skrive:

uvx tuitorial https://raw.githubusercontent.com/basnijholt/tuitorial/refs/heads/main/examples/pipefunc.yaml

Når presentasjonen er oppe, blar du fremover og bakover i presentasjonen med piltastene – eller bruker pil opp og ned for å velge mellom ulike trinn på samme lysbilde (for eksempel utheve én og én ting i kodeeksemplene dine mens du snakker).

Det er også mulig å endre fargetema for terminalvinduet, lagre skjermbilder, og mye annet ved å trykke Ctrl-P:

image: Dropp PowerPoint, bruk terminalen: «99,9% bør ikke bruke den»

Var frustrert

Nijholt skriver på Reddit at han lagde Tuitorial etter at han hadde vært frustrert over å ha prøvd å presentere et annet verktøy han hadde laget. Dermed begynte han å lage et nytt terminal-basert verktøy for å presentere et annet kodeprosjekt.

– Noen ganger kommer de beste verktøyene fra å løse dine egne behov! skriver Nijholt.

Glad i terminalen? Da har du kanskje fått med deg Ghostty, terminalen "alle" snakker om? Les om den her: