a template for openrndr project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
vechro 89767de35a Remove hardcoded mavenLocal() logic 2 years ago
.github/workflows Fix location of data inside macos app bundle, update workflows 2 years ago
data Add cheeta image for easy guide example usage 4 years ago
gradle Move to libs.version.toml for version management 2 years ago
src/main Upgrade to Kotlin 1.6.0, Gradle 7.3 3 years ago
.gitattributes Update gradle to 6.8 (#15) 4 years ago
.gitignore Update .gitignore 3 years ago
README.md Fix launching custom Kt files from command line 2 years ago
build.gradle.kts Remove hardcoded mavenLocal() logic 2 years ago
gradle.properties Add OPENRNDR task aliases 2 years ago
gradlew Upgrade to Gradle 7.5.1 2 years ago
gradlew.bat Upgrade to Gradle 7.5.1 2 years ago
settings.gradle.kts Move to libs.version.toml for version management 2 years ago

README.md

OPENRNDR template project

A feature rich template for creating OPENRNDR programs based on Gradle/Kts

The template consists of a configuration for Gradle and an example OPENRNDR program. The Gradle configuration should serve as the go-to starting point for writing OPENRNDR-based software.

If you are looking at this from IntelliJ IDEA you can start by expanding the project tab on the left. You will find a template program in src/main/kotlin/TemplateProgram.kt

You will find some basic instructions in the OPENRNDR guide

Gradle tasks

  • run runs the TemplateProgram
  • jar creates an executable platform specific jar file with all dependencies
  • jpackageZip creates a zip with a stand-alone executable for the current platform (works with Java 14 only)

Cross builds

To create runnable jars for a platform different from the platform you use to build one uses ./gradlew jar --PtargetPlatform=<platform>. The supported platforms are windows, macos, linux-x64 and linux-arm64.

Run other Kotlin programs from the command line

By default ./gradlew run runs a program called TemplateProgram.kt but a different one can be provided as an argument:

To run src/main/kotlin/myProgram.kt

./gradlew -Popenrndr.application=MyProgramKt

To run src/main/kotlin/foo/bar/myProgram.kt (assuming package foo.bar in myProgram.kt)

./gradlew -Popenrndr.application=foo.bar.MyProgramKt

Github Actions

This repository contains a number of Github Actions in ./github/workflows. The actions enable a basic build run on commit, plus publication actions that are executed when a commit is tagged with a version number like v0.* or v1.*.