{"id":31533430,"url":"https://github.com/kiip1/sklectern","last_synced_at":"2026-05-18T03:12:09.857Z","repository":{"id":134045564,"uuid":"607348769","full_name":"kiip1/SkLectern","owner":"kiip1","description":"Supercharge your scripts with various new language features and performance gains, transpiling right into Skript code.","archived":false,"fork":false,"pushed_at":"2023-05-03T18:42:27.000Z","size":286,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-04T04:47:59.880Z","etag":null,"topics":["bukkit","minecraft","skript","skript-addon","transpiler"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kiip1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-27T20:06:18.000Z","updated_at":"2023-02-27T20:42:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"59bb7f9e-7352-4675-9e92-69c36040433c","html_url":"https://github.com/kiip1/SkLectern","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/kiip1/SkLectern","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiip1%2FSkLectern","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiip1%2FSkLectern/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiip1%2FSkLectern/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiip1%2FSkLectern/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kiip1","download_url":"https://codeload.github.com/kiip1/SkLectern/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiip1%2FSkLectern/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33163451,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-17T22:39:12.733Z","status":"online","status_checked_at":"2026-05-18T02:00:06.436Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bukkit","minecraft","skript","skript-addon","transpiler"],"created_at":"2025-10-04T04:47:48.208Z","updated_at":"2026-05-18T03:12:09.839Z","avatar_url":"https://github.com/kiip1.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SkLectern\n\n[![license](https://img.shields.io/github/license/kiip1/SkLectern?style=for-the-badge\u0026color=dd7744)](./LICENSE)\n[![wiki](https://img.shields.io/badge/documentation-wiki-x?style=for-the-badge\u0026color=cc7788)](https://github.com/kiip1/SkLectern/wiki)\n\nSupercharge your scripts with various new language features and performance gains, transpiling right into Skript code.\n\nPlease do note that this is just a proof of concept, and the result is by no means production grade.\n\n## Installation\nGo [here](https://github.com/kiip1/SkLectern/releases/tag/latest) for the latest release.\nDownload either the Bukkit version or CLI.\n\n## Features\n- [Macros](#macros)\n- [Arithmetic](#arithmetic)\n\n### Macros\nThis language feature is similar to Skript options, it gets searched and replaced before execution like options, but allows arguments like functions.\nThe benefit of macros is that they don't have a performance impact unlike functions, and it allows for syntax elements to be passed as argument.\nPlease do note that parsing times may increase, and your scripts can become quite large when transpiled. Use with caution and optimize the macro body.\n\nMacros need to end with a ! and unlike functions they don't have types for arguments.\n\nThe syntax to use macros is as follows:\n```vb\ncommand /test:\n  trigger:\n    chance!(broadcast \"hi\", 0.5)\n\nmacro chance!(statement, chance):\n  if chance of $chance:\n    $statement\n```\nWith as result:\n```vb\ncommand /test:\n  trigger:\n    if chance of 0.5:\n      broadcast \"hi\"\n```\n\nStructures are also supported:\n```vb\nitem!(dirt, 5 seconds)\nitem!(stone, 10 seconds)\n\nstructure macro item!(item, cooldown):\n  command /$item:\n    cooldown: $cooldown\n    cooldown message: \u0026cWait a little longer before getting another item!\n    trigger:\n      give $item to player\n```\nWith as result:\n```vb\ncommand /dirt:\n  cooldown: 5 seconds\n  cooldown message: \u0026cWait a little longer before getting another item!\n  trigger:\n    give dirt to player\n\ncommand /stone:\n  cooldown: 10 seconds\n  cooldown message: \u0026cWait a little longer before getting another item!\n  trigger:\n    give stone to player\n```\n\n### Arithmetic\nSimple arithmetic like `3 + 2` gets simplified into `5`.\nThis allows you to write more clear code without worrying about performance.\n\n## Goals\n- Add more language features to Skript for advanced users.\n- Optimize parse times without requiring manual optimization.\n- Give high quality errors during transpiling process.\n- Be strict in language usage, probable bugs should be reported as an error.\n\n## Non-Goals\n- Add syntax elements to Skript, like a Skript addon.\n- Require end-users to depend on SkLectern.\n\n## Contributing\nFeel free to contribute, it might be smart to discuss features beforehand.\nMore syntax coverage is always welcome.\n\n## Roadmap\n- [x] Initial attempt with a proof of concept.\n- [ ] Add implementations for CLI and Bukkit.\n- [ ] Create API to allow for easier hooking.\n- [x] Performance: Literal Arithmetic\n- [ ] Language Feature: Annotations\n- [ ] Performance: Pure Functions\n- [ ] Language Feature: Auto-Cleaning Variables\n- [ ] Language Feature: Conditional Events\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiip1%2Fsklectern","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkiip1%2Fsklectern","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiip1%2Fsklectern/lists"}