# Introducing Compose-ur-Pres

DevFeed: [Introducing Compose-ur-Pres](<https://devfeed.tech/articles/introducing-compose-ur-pres-22861.md>)

Original publisher: [Read original article](<https://medium.com/kodein-koders/introducing-compose-ur-pres-090c95cbe1b7?source=rss----f311f45ef54---4>)

Author: Salomon BRYS

Published: 2024-06-25T11:35:42Z

Content type: release

Language: en

Sources: [Kodein Koders - Medium](<https://devfeed.tech/sources/kodein-koders-medium.md>)

Topics: [compose-for-desktop](<https://devfeed.tech/topics/compose-for-desktop.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [multiplatform](<https://devfeed.tech/topics/multiplatform.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Documentation](<https://devfeed.tech/topics/documentation.md>), [Template](<https://devfeed.tech/topics/template.md>), [wasm](<https://devfeed.tech/topics/wasm.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [compose-multiplatform](<https://devfeed.tech/tags/compose-multiplatform.md>), [desktop](<https://devfeed.tech/tags/desktop.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlinconf](<https://devfeed.tech/tags/kotlinconf.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [project](<https://devfeed.tech/tags/project.md>), [wasm](<https://devfeed.tech/tags/wasm.md>)

## AI overview

This article introduces Compose-ur-Pres, or CuP, an open-source presentation tool written in Kotlin with Compose for Desktop. It lets developers create and animate presentation slides as composable application screens, with features including slide navigation, transitions, an overview, speaker tools, and experimental web export.

## Source excerpt

A tool that allows you to write a presentation slide deck in Kotlin with Compose. https://medium.com/media/92b00e09e5e75db453796863708f60e6/href I've always been frustrated with regular presentation tools, such as Keynote, Powerpoint, or Google Slides. While I do not want to deny their quality, I simply do not believe these tools can implement everything that I have in mind. After all, as an application programmer, creating screens and animations is what I do. I have many ideas of how I want to present and animate my content, and I do not want to be constrained by a WYSIWYG editor. Since I program my screens, why not program my slides? When I first encountered Reveal.js, I thought "OK, that's what I want, but I want it in Kotlin". At that time, Compose multiplatform did not exist, so I wrote my first version with Kotlin-React. Then came Compose multiplatform and more specifically what was then known as Compose Web and is now named Compose HTML. So, of course, I rewrote the entire tool using that. I used it for several presentations (including my presentation at KotlinConf 23). At the same time Compose Desktop became stable and the new Compose Web with Wasm was introduced, my frustration with CSS (especially CSS animations) grew stronger. I wanted to position my content pixel by pixel, and frame by frame, just like Compose allowed me to. So I rewrote this presentation tool a third time, but this time for Compose desktop, and named it "Compose-ur-Pres", or "CuP" for short. A few weeks ago at Android Makers 24, I was thrilled to open source that tool. You can read its documentation, start creating your slides with a template project, and of course access its sources. The pitch of Compose-ur-Pres is very simple: write and animate your slides just like you would your application screens. Focus on your slide content, and CuP will take care of: Creating & managing the application window. Displaying your slides in order and animate transitions between them. Showing an overv