Skip to content

Modern high-level programming language for data packs

License

Notifications You must be signed in to change notification settings

ButterSus/KiwiLang

 
 

Repository files navigation

logo

Kiwi - data pack description language

Kiwi is a language for describing Minecraft datapack, built with a focus on syntax, based on Kotlin and some other languages.

Quick syntax look

Hello_World.kiwi

fun main() <- load(always) {
    print("Hello, World!")  # outputs "Hello, World!" to the chat
}

Event_Kill.kiwi

fun killedEvent(player: selector) -> promise<selector> <- tick(1) {
    static kills: scoreboard(playerKillCount)
    if (kills[player] > 0) {
        kills[player] = 0
        return $promise(player)
    }
}

fun main(player: selector) <- killedEvent(@a) {
    when (player.name) {
        "ButterSus" -> print("You goddamn hacker!")
        else -> print("He sucks!")
    }
}

see more examples here.

Features

  • Simple syntax - Kiwi is designed to be easy to read and write. Check out the syntax page.
  • Intelligent design - Kiwi is designed especially for Minecraft data packs, so you can implement your custom support for any ideas with no restrictions.
  • Huge documentation - Look at Kiwi documentation, which is constantly updated.

Installation

Usage

Contributing

Currently, Kiwi is in the early stages of development, only one person is working on it. So, if you want to help with the development of Kiwi, contact me on Discord: ButterSus#0146.

License

Kiwi is licensed under the MIT License.

Any questions?

Join to our discord server!

About

Modern high-level programming language for data packs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 48.6%
  • CSS 21.2%
  • Handlebars 14.9%
  • JavaScript 12.0%
  • SCSS 3.3%