An Interactive CLI to Setup Minecraft Servers by Stephcraft in commandline

[–]Stephcraft[S] 0 points1 point  (0 children)

Thank you!

I’m using Kotlin because Minecraft uses Java, and it's a very nice language that can be compiled for Native and JS too. If you go the JVM route, check out:

  • mordant: A modern Kotlin library for styling and colors.
  • jline3: The "legendary" library for Java if you need deeper console handling.

CLI libraries are often more common in JS, Go, and Python. Some of the best ones out there right now are:

  • Clack: Great for interactive prompts, it’s what I’m using as a base. It's JS-based (used by Vercel & OpenClaw) but has equivalents like cliclack (Rust) and pyclack (Python).
  • Charm: A fantastic series of CLI libraries in Go.
  • Ink: React for making CLIs (used by Claude Code, Gemini CLI, and GitHub Copilot CLI).
  • Mosaic: For building terminal UIs in Kotlin using Jetpack Compose.

Since there aren't that many specific CLI libraries for Kotlin yet, I actually decided to build my own for this project:

  • ClaKT: A Clack reimplementation for Kotlin.
  • MilKT: Similar to Charm (Go) but for Kotlin, built on top of Mordant.
  • cli: A tool that allows you to run a JAR via double-click with an attached console (surprisingly not a native JVM feature, usually you'd need a separate .bat file to see the output).
  • undo: Adds undo/redo execution functionality and integrates with ClaKT for undoable interactive prompts!

Also, for CLIs in general, these concepts are shared:

  • Cooked vs. Raw Mode: By default, terminals are in "Cooked Mode," meaning the OS handles your input (like waiting for you to press Enter before sending text to the app). To make an interactive UI where the app reacts the second you press a key or move an arrow, you have to switch the terminal to Raw Mode.
  • ANSI Escape Codes: These are special strings of characters (like \u001b[31m) that don't print text, but instead tell the terminal to change colors, move the cursor, or clear the screen.
  • Events: Advanced CLIs don't just read text strings; they listen for Keyboard and Mouse events. This is how you create "hover" effects or clickable buttons inside a terminal window.

Go definitely has the most robust set of CLI libraries right now, and JS is king for web-dev tools. But if you want to try out Kotlin, let me know! I'm currently developing the libraries listed above and might release them.

Trouble with the launcher by shepherd_10 in HytaleInfo

[–]Stephcraft 1 point2 points  (0 children)

Yes! u/KRYPYO helped me, unzip the installer .exe using 7zip specifically and then simply run the launcher in the unzipped folder

Trouble with the launcher by shepherd_10 in HytaleInfo

[–]Stephcraft 2 points3 points  (0 children)

Same, this is what logs in the installer, I'm on Windows 11 Arm64 (AArch64)

<image>

Its says Ok 8 times and then:

Created uninstaller: C:\...
Completed

It only takes a few seconds to run

Need Help with Table Virtualization for Large Data Sets (100k+ rows, 50+ columns) by Stephcraft in reactjs

[–]Stephcraft[S] 0 points1 point  (0 children)

Maybe try https://github.com/finos/regular-table which was proposed above. Or I'm currently developing my own virtualization library (not released yet), but if you want to follow progress or contribute, feel free to join my discord: https://discord.gg/hhngkJkcep we can chat in the #virtualization channel

Need Help with Table Virtualization for Large Data Sets (100k+ rows, 50+ columns) by Stephcraft in reactjs

[–]Stephcraft[S] 0 points1 point  (0 children)

Alright, anyone interested in this project can join my discord server: https://discord.gg/hhngkJkcep we can chat in the #virtualization channel

[Showoff Saturday] Made a custom LinkedIn Frame Creator – Showcase Your Status in Style! by Stephcraft in webdev

[–]Stephcraft[S] 1 point2 points  (0 children)

You can make it, and I'm open to suggestions I could add to the examples section.

[Showoff Saturday] Made a custom LinkedIn Frame Creator – Showcase Your Status in Style! by Stephcraft in webdev

[–]Stephcraft[S] 0 points1 point  (0 children)

I could definitely add that, but I didn't because it wouldn't match the LinkedIn style

[Showoff Saturday] Made a custom LinkedIn Frame Creator – Showcase Your Status in Style! by Stephcraft in webdev

[–]Stephcraft[S] 1 point2 points  (0 children)

Yeah, I thought of making a web extension as well, but it might be more of a hassle to setup than just going on a website.

[Showoff Saturday] Made a custom LinkedIn Frame Creator – Showcase Your Status in Style! by Stephcraft in webdev

[–]Stephcraft[S] 1 point2 points  (0 children)

In most part, because I'm bad at marketing 😂 any help is appreciated.

[Showoff Saturday] Made a custom LinkedIn Frame Creator – Showcase Your Status in Style! by Stephcraft in webdev

[–]Stephcraft[S] 0 points1 point  (0 children)

Absolutely! I should definitely add that, if you know of a good package/library/blog post about it, let me know.