Přeskočit na obsah
Realizace

Případová studie

Open source (Skript / Minecraft komunita)

skJson — JSON & HTTP addon pro Skript

Klient
Open source (Skript / Minecraft komunita)
Délka
od 2022, aktivní údržba (aktuálně 6.x)
Stav
Dodáno

Výsledek Dlouhodobě udržovaný open-source nástroj s tisíci staženími.

Open-source addon skJson pro SkriptLang: nativní JSON/JSONC, asynchronní HTTP, cache, file watching a NBT serializace pro Paper/Spigot servery. Veřejný projekt s tisíci staženími a dlouhodobou údržbou.

skJson — JSON & HTTP addon pro Skript
  1. 01

    Výchozí situace

    Skript komunita (Paper, Spigot, Purpur…) potřebuje v skriptech pracovat s JSON API, konfiguračními soubory a HTTP — bez psaní plnohodnotného Javového pluginu na každou integraci.

    Existující řešení byla zastaralá, neúplná nebo bez spolehlivého HTTP a moderní Skript syntaxe. Od října 2022 vzniká skJson jako addon, který to řeší natrvalo.

  2. 02

    Problém

    Bez solidního JSON/HTTP addonů skripteři:

    • ohýbali textové parsování a křehké workarounds,
    • neměli spolehlivé async HTTP (GET/POST/PUT/PATCH/DELETE/HEAD),
    • bojovali s NBT a serializací Bukkit/Minecraft objektů,
    • naráželi na rozbití při upgradu Skriptu nebo Minecraft verze.

    Nejtěžší část dlouhodobě není „umět Gson“, ale udržet kompatibilitu napříč Skript 2.x, Java 21+ a serverovými platformami — a zároveň držet dokumentaci a releasy.

  3. 03

    Rozhodnutí

    Postavit ostře zaměřený addon místo dalšího „univerzálního frameworku“. Veřejný open source, jasné releasy, wiki a dokumentace na Skript Hub.

    Verze 6.0 přešla na moderní SyntaxRegistry, spolehlivější HTTP parametry a JSONC — s požadavkem Skript 2.15+ a Java 21+.

  4. 04

    Řešení

    skJson dnes nabízí:

    • nativní JSON a JSONC, JSON Path, čtení/zápis souborů,
    • asynchronní HTTP klienta se sdíleným clientem a timeouty,
    • in-memory cache a sledování změn JSON souborů,
    • NBT serializaci a převody Bukkit/Minecraft objektů,
    • dokumentaci, wiki a pravidelné GitHub releasy (JAR pro servery).

    Podporované prostředí zahrnuje Paper / Spigot / Purpur (1.16.5+) a novější forky. Projekt žije na GitHubu pod cooffeeRequired/skJson.

  5. 05

    Výsledek

    Addon používá komunita serverů a skripterů v produkci. Stabilní releasy řady 5.x/6.x mají na GitHubu tisíce až desítky tisíc stažení JAR u jednotlivých buildů (ověřitelné na stránce Releases projektu).

    • Co drží GEREQ / autor: API, kompatibilita se Skript/Java, dokumentace, releasy a podpora issue trackeru.
    • Co drží komunita: skripty a servery v produkci, zpětná vazba z issue a diskusí.

    Pro GEREQ je skJson důkaz dlouhodobé údržby: stejná disciplína releasů a dokumentace jako u klientských integrací — ne marketingový README bez follow-upu.

    Komunita hlásí rozbití po upgradu Skriptu nebo Javy. Reakce je releas s jasnou poznámkou, co se změnilo — ne tichá větev, která žije jen na notebooku autora.

  6. 06

    Ponaučení

    Malý nástroj s jasným účelem a poctivou údržbou často přinese víc než velká platforma. U open source rozhoduje kompatibilita, dokumentace a tempo releasů — ne marketingový README.

    Stejná disciplína platí u klientských integrací: verze, changelog, co se rozbije při upgradu a kdo to má na starosti. Bez toho vznikne „plugin, který nikdo nechce sáhnout“.

Technologie

  • Java
  • SkriptLang
  • Gson
  • Paper/Spigot API
  • HTTP client

Repozitář

https://github.com/cooffeeRequired/skJson

Další krok

Probrat podobný problém

Diagnostika, integrace nebo custom systém — nejdřív ověříme, jestli to dává smysl.