Introduction
Getting Started
Zornux turns programming into something you can read aloud. This page gives you the whole mental model in a few minutes.
What is Zornux?
Zornux is a high-level programming language whose goal is to radically reduce the learning curve of software development. You express logic in human-readable, intent-driven English — while the language stays strict, deterministic, and suitable for professional applications.
It rests on three principles:
- Zero punctuation overhead — no semicolons, no structural colons, no required grouping brackets in ordinary logic.
- Flexible structural bounds — every block closes with the word
end, never with significant whitespace. - Intent-aware diagnostics — the toolchain explains errors in plain language and proposes a fix.
Install it
Zornux ships as a single self-contained zornux
binary — there is no runtime to install alongside it.
# macOS / Linux — Homebrew
brew install zornux/zornux/zornux
# Windows — Scoop
scoop bucket add zornux https://github.com/zornux/scoop-zornux
scoop install zornux
Or download a binary for your platform — Windows, Linux, or macOS, on x64 or
arm64 — from the
latest
release, unpack it, and put zornux on your PATH.
tar -xzf zornux-1.8.0-linux-x64.tar.gz
./zornux --version # zornux 1.8.0
Try the language in the browser playground at play.zornux.com — the same toolchain, compiled to WebAssembly, with nothing to download.
Hello, world
The smallest Zornux program is exactly what you'd guess:
show "Hello World!"
Put that in hello.zx and run it. There is no build step and no
project scaffolding to create first:
zornux run hello.zx # Hello World!
zornux check hello.zx # validate without running it
zornux repl # or try things interactively
When a program grows past one file, zornux init scaffolds a
project — see Modules and the
CLI reference for the rest of the toolchain.
The one rule to remember
You declare values with create. You can bind a value with the
word as or with = — they mean the same thing, so
pick whichever reads better:
create name as "Alice" # reads like a sentence
create age = 16 # or use '=' if you prefer
age = age + 1 # reassign an existing value with '='
Comparisons are words too: is, is not, is less than, is greater than or equal to. You almost never need to reach for a symbol.
A complete little program
create scores as [8, 5, 10, 3]
create total = 0
for each score in scores
total = total + score
end
if total is greater than 20
show "High total: " + total
else
show "Total: " + total
end
How these docs are organized
| Section | What you'll find |
|---|---|
| Language Tour | Variables, types, operators, conditionals, loops, and functions. |
| Standard Library | Built-in functions: text, lists, math, dates, files, and JSON. |
| Classes | Zornux's take on objects: classes, items, and inheritance. |
| Modules | Multi-file projects: modules, imports, and visibility. |
| Controllers | HTTP route groups with controller and web blocks, and service for business logic. |
| Building APIs | Complete walkthrough: CRUD, validation, databases, and testing. |
| Security | Declarative authorization and untrusted-input isolation. |
| Mobile Development | Build native Android apps — screens, layouts, widgets, state, and navigation. |
| Android UI Patterns | Theming, custom widgets, forms, dark mode, and accessibility. |
| Testing | Native test / expect tests and zornux test. |
| Command Line | The zornux tool: run, build, serve, format, and the REPL. |
| Doc Generator | Generate Markdown or HTML API docs with zornux doc. |
| Debugger | Breakpoints, stepping, and inspection with zornux debug / dap. |
| Specification | The formal grammar, type system, and design rationale. |
| Keywords | Every reserved word, at a glance. |
| Diagnostics | How Zornux reports — and explains — errors. |
Start with the language tour for a guided walk through the syntax, then explore any topic from the sidebar.