{"guid":"ed6dd153-a6dd-44cd-8718-e5e929565745","title":"Architecting Real Typst Templates","subtitle":"","slug":"realraum-3-architecting-real-typst-templates","link":"https://c3voc.de","description":"Typst templates are software --- not documents. And like all software, they collapse under their own weight.  This talk covers the lifecycle of a Typst template, from a small snippet over to a function, and finally a full package with public and private APIs, complexity layers, separation of concerns and the final, one rule lib.typ must follow. We use a case study of a template as an example, walking through the complexities of making a full package.  You'll leave with an idea of how to write a package that scales over time instead of collapsing.\r\n\r\nSlides: https://www.lukechriswalker.at/blogs/69bf1116b6efd63b5d270014\r\n\r\nhttps://creativecommons.org/licenses/by-sa/4.0/","original_language":"eng","persons":["Tiefseetauchner"],"tags":["3","2026","realraum","W2R2","realraum-eng","realraum","r3","r3talks","graz"],"view_count":324,"promoted":false,"date":"2026-03-21T16:00:00.000+01:00","release_date":"2026-03-21T00:00:00.000+01:00","updated_at":"2026-04-08T23:30:04.263+02:00","length":1994,"duration":1994,"thumb_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745.jpg","poster_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745_preview.jpg","timeline_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/contributors/realraum/3-ed6dd153-a6dd-44cd-8718-e5e929565745.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/realraum-3-architecting-real-typst-templates","url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_title":"realraum","conference_url":"https://api.media.ccc.de/public/conferences/realraum","related":[],"recordings":[{"size":192,"length":1994,"mime_type":"video/webm;codecs=av01","language":"eng","filename":"realraum-3-eng-Architecting_Real_Typst_Templates_av1-hd.webm","state":"new","folder":"av1-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-03-21T20:31:54.379+01:00","recording_url":"https://cdn.media.ccc.de/contributors/realraum/av1-hd/realraum-3-eng-Architecting_Real_Typst_Templates_av1-hd.webm","url":"https://api.media.ccc.de/public/recordings/96506","event_url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_url":"https://api.media.ccc.de/public/conferences/realraum"},{"size":71,"length":1994,"mime_type":"video/mp4","language":"eng","filename":"realraum-3-eng-Architecting_Real_Typst_Templates_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2026-03-21T20:21:35.036+01:00","recording_url":"https://cdn.media.ccc.de/contributors/realraum/h264-sd/realraum-3-eng-Architecting_Real_Typst_Templates_sd.mp4","url":"https://api.media.ccc.de/public/recordings/96505","event_url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_url":"https://api.media.ccc.de/public/conferences/realraum"},{"size":30,"length":1994,"mime_type":"audio/mpeg","language":"eng","filename":"realraum-3-eng-Architecting_Real_Typst_Templates_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2026-03-21T20:20:17.447+01:00","recording_url":"https://cdn.media.ccc.de/contributors/realraum/mp3/realraum-3-eng-Architecting_Real_Typst_Templates_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/96504","event_url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_url":"https://api.media.ccc.de/public/conferences/realraum"},{"size":20,"length":1994,"mime_type":"audio/opus","language":"eng","filename":"realraum-3-eng-Architecting_Real_Typst_Templates_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2026-03-21T20:20:00.649+01:00","recording_url":"https://cdn.media.ccc.de/contributors/realraum/opus/realraum-3-eng-Architecting_Real_Typst_Templates_opus.opus","url":"https://api.media.ccc.de/public/recordings/96503","event_url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_url":"https://api.media.ccc.de/public/conferences/realraum"},{"size":208,"length":1994,"mime_type":"video/mp4","language":"eng","filename":"realraum-3-eng-Architecting_Real_Typst_Templates_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2026-03-21T20:18:36.650+01:00","recording_url":"https://cdn.media.ccc.de/contributors/realraum/h264-hd/realraum-3-eng-Architecting_Real_Typst_Templates_hd.mp4","url":"https://api.media.ccc.de/public/recordings/96502","event_url":"https://api.media.ccc.de/public/events/ed6dd153-a6dd-44cd-8718-e5e929565745","conference_url":"https://api.media.ccc.de/public/conferences/realraum"}]}