Giter Site home page Giter Site logo

reveal-kt's Introduction

RevealKt

CI GitHub last commit GitHub Maven Central

Kotlin DSL wrapper around Reveal JS presentation library

Usage

Run server with presentation:

jbang [email protected] run ./MyAwesomePresentation.reveal.kts

Bundle presentation to static html site:

jbang [email protected] bundle ./MyAwesomePresentation.reveal.kts

Render presentation to pdf via playwright:

jbang [email protected] pdf ./MyAwesomePresentation.reveal.kts -o myPresentation.pdf

Caution

For now playwright requires to download chromium first (uses npm)

Playwright documentation: https://playwright.dev/java/docs/browsers

jbang [email protected] chrome install

Uninstall chrome

jbang [email protected] chrome uninstall

Create new presentation from template

jbang [email protected] init my-awesome-presentation
cd ./my-awesome-presentation
jbang [email protected] run ./presentation/my-awesome-presentation.reveal.kts

Add alias for revealkt

jbang app install [email protected]
revealkt run ./presentation/my-awesome-presentation.reveal.kts

Example

MyAwesomeScript.reveal.kts:

import qrcode.color.Colors

title = "My awesome presentation"

configuration {
    controls = false
    progress = false
}

slides {
    regularSlide {
        autoanimate = true
        +title { "Hello from my awesome presentation" }
    }
    regularSlide {
        autoanimate = true
        +qrCode("https://github.com/LimeBeck/reveal-kt") {
            stretch = true
            transformBuilder {
                val logo = loadAsset("logo2.png")
                it.withSize(20).withColor(Colors.css("#B125EA")).withLogo(logo, 150, 150, clearLogoArea = true)
            }
        }
    }
    verticalSlide {
        val title = Title { "Some text" }
        slide {
            autoanimate = true
            +title
            +note {
                "Some note"
            }
        }
        slide {
            autoanimate = true
            +title
            +title { "Updated text" }
            +note {
                "Some note"
            }
        }
        slide {
            autoanimate = true
            +title
            +code {
                //language=JSON
                """
                   {
                    "string": "some string"
                   } 
                """.trimIndent()
            }
        }
        slide {
            +img(src = "image.png") {
                stretch = true
            }
        }
    }
}

reveal-kt's People

Contributors

limebeck avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

reveal-kt's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.