Skip to content

Releases: netchcodelang/netchcodinglang

v2.40 ready for production

Choose a tag to compare

@netchcodelang netchcodelang released this 07 Aug 11:00
a0c9b5f

Netch 2 — Update Log


An Aerotion Production

First release of Netch 2

What's New

  • Brand new interpreter built from scratch — faster, cleaner, more reliable
  • New file extension: .ntch (Netch 1's .netch files still work separately — we didn't break your old stuff)
  • Full rewrite of the window/UI system using tkinter

New UI Widgets

  • window() — open a window manually
  • label() — display text with custom color and size
  • button() — buttons with custom colors
  • textbox() — text input field
  • passwordbox() — password input (hidden text)
  • image() — display images (.png, .gif)
  • progressbar() — progress bar with setprogress()
  • checkbox() — tick box with getchecked()
  • radiobutton() — radio button groups with getradio()
  • dropdown() — dropdown menu with getdropdown()
  • slider() — slider with getslider()
  • listbox() — scrollable list with getlist()
  • tabcontrol() + addtab() — tabbed panels

New Features

  • Sound supportsound.play("file.wav") and sound.stop()
  • Auto-updater — checks GitHub every run and tells you when a new version is out
  • Netch 1 detector — if you accidentally run a Netch 1 file, it kindly explains exactly what to change line by line
  • Beginner-friendly errors — every error now shows the exact line, what went wrong, and how to fix it
  • File downloadsdownload.file("url", "savepath")
  • More string utilitiesupper(), lower(), length(), contains()
  • time.now() — get current date and time
  • Loop safety cap — infinite while loops are stopped after 100,000 iterations with a helpful warning

Core Language

  • Variables, math, print
  • if / else
  • while loops
  • repeat loops
  • function + run()
  • File ops: openfile(), copyfile(), deletefile()
  • random(), ask(), number()

Netch 2 is built by Aerotion Productions
Community: reddit.com/r/netchcoding2
GitHub: github.com/netchcodelang/netchcodinglang


v2.1.0 — Dark Mode, Networking & BAT Support

Dark Mode

  • dark:true / dark:false — one line to make your whole app dark
  • All widgets automatically switch to dark colors (buttons, textboxes, checkboxes, sliders, etc)

Rounded Buttons

  • cr.button("label") — rounded corner button (cr = corner rounded)
  • Works with action too: cr.button("label") action ...

Custom Colors Everywhere

  • label("text", "#ff0000") — colored text
  • button("label", "#ff6600", "white") — custom button colors
  • textbox("name") automatically matches your theme

display.webpage

  • display.webpage("https://example.com") — show a webpage in your app
  • Falls back to opening in the default browser if embedded mode isn't available

Networking

  • send.post("url", "key", "value") — send data to any server (form POST)
  • send.json("url", "key", "value") — send JSON data to any server
  • get.request("url") — fetch data from any URL
  • connect.server("ws://url") — connect to a WebSocket server
  • send.message("text") — send a message to connected server
  • send.textbox("boxname", "serverurl", "fieldname") — send a textbox's content directly to a server in one line

BAT / Shell Integration

  • run.bat("command or path/to/file.bat") — run any .bat file or Windows command from your .ntch script
  • run.shell("command") — run any shell command
  • Results saved to bat.output and shell.output variables automatically

Fixes

  • Placeholder text support in textbox: textbox("name", 30, "Type here...")
  • All widgets now respect dark mode colors properly

v2.2.0 — Package Manager & Custom Window Titles

Netch Package Manager

  • New file: netch_pkg.py — the official Netch package manager
  • python netch_pkg.py install <name> — download and install a package
  • python netch_pkg.py remove <name> — uninstall a package
  • python netch_pkg.py list — see installed packages
  • python netch_pkg.py info <name> — info about a package
  • Packages are stored in ~/Netch2/packages/
  • Packages are .ntchpkg files hosted on the Netch GitHub

importpkg

  • importpkg customwindowtitle — load an installed package at the top of your script
  • Must come right after <using.ntch>

Custom Window Title Bars

  • New package: customwindowtitle
  • Rename any PNG to yourname.nframetchpng
  • Install: python netch_pkg.py install customwindowtitle
  • Use in script:
    importpkg customwindowtitle
    windowtitle("yourimage.nframetchpng")
    windowtitle("yourimage.nframetchpng", "App Title")
    
  • Removes the default OS title bar and replaces it with your PNG
  • Built-in drag support — users can drag the window by the custom title bar
  • Built-in X close button in the top-right corner

v2.3.0 — The Language Update

New CLI Commands

  • netch list pkgs all — fetches and lists every package available on GitHub
  • netch list pkgs — lists every package installed on your machine

Package Creator

  • After creating a package, it now tells you to post on r/netchcoding2 to get it added as an official Netch package

30+ New Language Features

Math:

  • math.abs(x) — absolute value
  • math.round(x, decimals) — round a number
  • math.floor(x) — round down
  • math.ceil(x) — round up
  • math.sqrt(x) — square root
  • math.power(x, y) — x to the power of y
  • math.max(a, b, c...) — largest value
  • math.min(a, b, c...) — smallest value
  • math.clamp(val, min, max) — keep a number between two values

Strings:

  • str.replace("text", "old", "new") — replace in a string
  • str.split("text", "separator") — split into a list
  • str.trim("text") — remove whitespace
  • str.starts("text", "prefix") — check start
  • str.ends("text", "suffix") — check end
  • str.repeat("text", 3) — repeat a string
  • str.index("text", "find") — find position
  • str.reverse("text") — reverse a string
  • str.count("text", "find") — count occurrences
  • str.format("Hello {}", "world") — format with values

Lists:

  • list.new(a, b, c) — create a list
  • list.add("mylist", value) — add to a list
  • list.get("mylist", index) — get item by index
  • list.length("mylist") — get list size
  • list.remove("mylist", index) — remove item
  • list.contains("mylist", value) — check if item exists
  • list.join("mylist", ", ") — join to string

Loops:

  • for x from 1 to 10 — loop with a counter variable
  • foreach item in mylist — loop over every item in a list

File Read/Write:

  • file.read("path") — read a file as text
  • file.write("path", "content") — write to a file
  • file.append("path", "content") — add a line to a file
  • file.exists("path") — check if file exists
  • file.rename("old", "new") — rename a file
  • file.size("path") — get file size in bytes

Dialogs:

  • dialog.info("title", "message") — info popup
  • dialog.error("title", "message") — error popup
  • dialog.warn("title", "message") — warning popup
  • dialog.ask("title", "question") — yes/no popup → true/false
  • dialog.input("title", "prompt") — text input popup
  • dialog.file("title") — file picker popup
  • dialog.folder("title") — folder picker popup
  • dialog.save("title") — save file popup

Clipboard:

  • clipboard.copy("text") — copy to clipboard
  • clipboard.paste() — paste from clipboard

System:

  • sys.env("VARIABLE") — get environment variable
  • sys.exit() — close the app
  • sys.platform — get OS name
  • sys.username — get current username
  • sys.homedir — get home folder path
  • sys.cwd — get current working directory
  • sys.desktop — get Desktop path

Date & Time:

  • date.today — today's date
  • date.year / date.month / date.day — date parts
  • time.sleep(seconds) — pause the script
  • time.stamp — Unix timestamp

Window Extras:

  • window.center — center the window on screen
  • window.minimize — minimize the window
  • window.maximize — maximize the window
  • window.icon("path.ico") — set window icon
  • window.opacity(0.9) — set window transparency (0.0–1.0)
  • window.resizable(true/false) — allow or lock resizing
  • window.always.top(true) — keep window on top
  • window.fullscreen(true) — go fullscreen

UI Extras:

  • separator — horizontal divider line
  • spacer(20) — blank vertical space
  • heading("Big Text") — big bold label
  • link("Click here", "https://...") — clickable hyperlink
  • colorpicker() — opens a color picker → returns hex color
  • set.font("Arial", 14) — change the app font
  • clear.window — remove all widgets from the window

Network & Data:

  • url.open("https://...") — open a URL in the browser
  • json.parse("...") — parse JSON text
  • json.make("key", "value", ...) — create JSON text

Type Utils:

  • typeof(value) — returns "text", "number", "bool", "list"
  • tonumber(value) — convert to number
  • totext(value) — convert to text
  • isnumber(value) — check if it's a number
  • isempty(value) — check if value is empty/blank

Netch 2 is built by Aerotion Productions
Community: reddit.com/r/netchcoding2
GitHub: github.com/netchcodelang/netchcodinglang

PUBLIC FULL RELEASE

Choose a tag to compare

@netchcodelang netchcodelang released this 04 Aug 22:07
e46f78d

Netch 2 — Update Log

First release of Netch 2

What's New
Brand new interpreter built from scratch — faster, cleaner, more reliable
New file extension: .ntch (Netch 1's .netch files still work separately — we didn't break your old stuff)
Full rewrite of the window/UI system using tkinter
New UI Widgets
window() — open a window manually
label() — display text with custom color and size
button() — buttons with custom colors
textbox() — text input field
passwordbox() — password input (hidden text)
image() — display images (.png, .gif)
progressbar() — progress bar with setprogress()
checkbox() — tick box with getchecked()
radiobutton() — radio button groups with getradio()
dropdown() — dropdown menu with getdropdown()
slider() — slider with getslider()
listbox() — scrollable list with getlist()
tabcontrol() + addtab() — tabbed panels
New Features
Sound support — sound.play("file.wav") and sound.stop()
Auto-updater — checks GitHub every run and tells you when a new version is out
Netch 1 detector — if you accidentally run a Netch 1 file, it kindly explains exactly what to change line by line
Beginner-friendly errors — every error now shows the exact line, what went wrong, and how to fix it
File downloads — download.file("url", "savepath")
More string utilities — upper(), lower(), length(), contains()
time.now() — get current date and time
Loop safety cap — infinite while loops are stopped after 100,000 iterations with a helpful warning
Core Language
Variables, math, print
if / else
while loops
repeat loops
function + run()
File ops: openfile(), copyfile(), deletefile()
random(), ask(), number()

Netch 2 is built by Aerotion Productions Community: reddit.com/r/netchcoding2 GitHub: github.com/netchcodelang/netchcodinglang

v2.1.0 — Dark Mode, Networking & BAT Support
Dark Mode
dark:true / dark:false — one line to make your whole app dark
All widgets automatically switch to dark colors (buttons, textboxes, checkboxes, sliders, etc)
Rounded Buttons
cr.button("label") — rounded corner button (cr = corner rounded)
Works with action too: cr.button("label") action ...
Custom Colors Everywhere
label("text", "#ff0000") — colored text
button("label", "#ff6600", "white") — custom button colors
textbox("name") automatically matches your theme
display.webpage
display.webpage("https://example.com") — show a webpage in your app
Falls back to opening in the default browser if embedded mode isn't available
Networking
send.post("url", "key", "value") — send data to any server (form POST)
send.json("url", "key", "value") — send JSON data to any server
get.request("url") — fetch data from any URL
connect.server("ws://url") — connect to a WebSocket server
send.message("text") — send a message to connected server
send.textbox("boxname", "serverurl", "fieldname") — send a textbox's content directly to a server in one line
BAT / Shell Integration
run.bat("command or path/to/file.bat") — run any .bat file or Windows command from your .ntch script
run.shell("command") — run any shell command
Results saved to bat.output and shell.output variables automatically
Fixes
Placeholder text support in textbox: textbox("name", 30, "Type here...")
All widgets now respect dark mode colors properly

Public Pre-release

Choose a tag to compare

@netchcodelang netchcodelang released this 04 Aug 21:05
c92b802

check out the update log in reddit 😭 but if u really wanna read it here then take this ai slop
Netch 2 — Update Log
v2.0.0 — The Big Comeback

First pre-release of Netch 2

What's New
Brand new interpreter built from scratch — faster, cleaner, more reliable
New file extension: .ntch (Netch 1's .netch files still work separately — we didn't break your old stuff)
Full rewrite of the window/UI system using tkinter
New UI Widgets
window() — open a window manually
label() — display text with custom color and size
button() — buttons with custom colors
textbox() — text input field
passwordbox() — password input (hidden text)
image() — display images (.png, .gif)
progressbar() — progress bar with setprogress()
checkbox() — tick box with getchecked()
radiobutton() — radio button groups with getradio()
dropdown() — dropdown menu with getdropdown()
slider() — slider with getslider()
listbox() — scrollable list with getlist()
tabcontrol() + addtab() — tabbed panels
New Features
Sound support — sound.play("file.wav") and sound.stop()
Auto-updater — checks GitHub every run and tells you when a new version is out
Netch 1 detector — if you accidentally run a Netch 1 file, it kindly explains exactly what to change line by line
Beginner-friendly errors — every error now shows the exact line, what went wrong, and how to fix it
File downloads — download.file("url", "savepath")
More string utilities — upper(), lower(), length(), contains()
time.now() — get current date and time
Loop safety cap — infinite while loops are stopped after 100,000 iterations with a helpful warning
Core Language
Variables, math, print
if / else
while loops
repeat loops
function + run()
File ops: openfile(), copyfile(), deletefile()
random(), ask(), number()

Netch 2 is built by Aerotion Productions Community: reddit.com/r/netchcoding2 GitHub: github.com/netchcodelang/netchcodinglang

ALPHA EXPERMINTAL BETA TEST 1

Choose a tag to compare

@netchcodelang netchcodelang released this 04 Aug 11:00
05b897c
Add files via upload