hotgrin is a free, open-source programming language that reads like plain English — and compiles to a real, fast program. Learn to code without fighting punctuation. Ship a genuine Windows .exe when you’re done
▶ Try it in your browser — nothing to install
▶ Get started in 5 minutes: read all about it
▶ Get all the info on Github.
▶ Use hotgrin in your AI! Just send your AI agent here: hotgrin and AI.
▶ Open source (MIT) · Built on Go · Errors explained kindly in English or Afrikaans
THE TASTE
See a complete program
action discount with price, percent
give back price minus (price times percent divided by 100)
end action
set total to 897
say "Total: R" plus total
say "After 10% off: R" plus discount with total, 10The result is:
Total: R897
After 10% off: R807.3> No semicolons. No curly braces. No boilerplate.
> Names can have spaces —cart totalis one name, the way you’d say it.
> Maths behaves like school maths —divided bygives a decimal, brackets group.
>plusjust works — joins text, adds numbers, converts between them for you.
WHY HOTGRIN
Why people choose hotgrin
If you’re new to programming:
> Write your first working program in minutes, not evenings — the tutorial takes you from zero to sharing your own program.
> Mistakes are explained kindly and precisely: “there is no value called ‘totall’ here — is it a typo, or did you forget to set it?” Never a wall of compiler jargon.
> Learn in English or Afrikaans — the only language we know of with first-class Afrikaans error messages.
> Try everything in the browser playground before installing anything at all.
If you can already program:
> hotgrin transpiles to real Go — inspect the output any time with
hotgrin reveal. Nothing is hidden, ever.
> Testing is part of the language, not a bolt-on:test "..."blocks withexpect ... to be ...assertions, run by one command.
> Failures can’t be silently ignored — fallible actions must be handled, enforced before the program runs.
> Structured concurrency (at the same time ... end at the same time) compiles to goroutines with the shared-state guarded for you.
> Cross-compile a Windows.exefrom any machine with one flag.
> The whole language is a small, readable Go codebase —
read it, 91+ tests, CI on every commit.
If you teach:
> Line-by-line syntax with explicit
endblocks — nothing invisible, nothing implied.
> The Watcher checker never raises a false alarm, so learners trust it.
> A verified cookbook of 21 copy-paste recipes and a complete worked project ready for the classroom.
THE REVEAL
Nothing is hidden
Your program becomes real Go — the language behind Docker and Kubernetes:
say "Hello, world"results in:
package main
import "fmt"
func main() {
fmt.Println("Hello, world")
}Run hotgrin reveal yourprogram.hot and read the Go behind it. Learn gently now, peek under the bonnet whenever curiosity strikes — and outgrow nothing: the skills transfer.
THE WATCHER
Mistakes, explained kindly — in two languages
Every program is checked by the Watcher before it runs.
Its iron rule:
it only speaks when it can prove something is wrong. No false alarms, no nagging — so when it speaks, you listen.
English:
error line 2: there is no value called 'totall' here —
is it a typo, or did you forget to set it?Afrikaans:
error line 2: daar is geen waarde genaamd 'totall' hier nie —
is dit 'n tikfout, of het jy vergeet om dit te stel?> Catches typos, wrong argument counts, divide-by-zero, unreachable code, unused values, unhandled failures — before anything runs.
> You will never see a raw compiler error. That’s a promise built into the design.
> More languages are on the roadmap — native speakers welcome to contribute.
PHILOSOPHY
The philosophy of hotgrin
Five beliefs shape every decision in the language:
- Reading beats memorising
Code should read the way you’d explain it aloud.if score is at least 50—
you already knew what that does. The fewer symbols between your idea and the computer, the sooner you’re actually programming.- Kind is not the same as vague
Friendly errors are precise errors. The Watcher points at the exact line, in plain words, and never guesses. Kindness that sacrifices truth would be a toy; hotgrin refuses to be a toy.- A beginner’s language must not have a ceiling
hotgrin compiles to Go — the same technology running serious global infrastructure. The language you learn on Saturday is one you could genuinely build with on Monday. Andrevealmeans you can see the bridge to
professional code whenever you’re ready to cross it.- Small core, honest edges
The language itself stays small and consistent. Reach comes from libraries, not from bolting features onto the core. And when something isn’t built yet, hotgrin says so plainly — check the public roadmap.- Your language is welcome here
Learning lands deepest in your own tongue. English and Afrikaans ship today; the mechanism is built for more. Programming education shouldn’t have a language barrier — especially not in South Africa, where hotgrin was born.
FEATURES GRID
Everything in the box:
> Variables & maths that behave
set cart total to 0,increase score by 10— and7 divided by 2is3.5, because that’s what you meant.> Decisions & loops in plain words
if ... else ... end if·repeat 3 times·repeat while·repeat for each learner in class.
> Records that describe thingsdescribe order ... end describe, then read fields naturally:price of order.
> Actions (your own commands)
Define once withaction, reuse everywhere,give backresults. Types are inferred — no annotations to learn.
> Built-in testingtest "it works"withexpect ... to be ...— one command runs them all.
> Honest error handlinggive back problem "..."+try / if it fails— and unhandled failures are caught before the program runs.
> Safe concurrencyat the same timeblocks run work in parallel, with shared results collected safely by design.
> Real programs outhotgrin build --windowsmakes a genuine.exeanyone can run — nothing to install on their side.
> Command-line inputs, free--helpinput name as text default "world"— your program gets professional--flagsautomatically.
HOW TO START
How to start (pick your path)
Path 1 — Zero install (30 seconds)
> Open the playground.
>Type on the left; watch real Go appear on the right.
>Flip the Watcher to Afrikaans if you like. Everything runs in your browser.
Path 2 — One command (if you have Go)
> Install Go 1.22+ — one installer, one time.
> Run:
go install github.com/hotgrin/hotgrin/cmd/hotgrin@latest> Check:
hotgrin version
Path 3 — Download a binary
> Grab your platform’s file from the latest release (Windows, Linux, macOS).
> Unzip it onto your PATH. (You’ll still want Go installed — hotgrin uses it to compile your programs.)
> Your first program (2 minutes)
Make a filehello.hot:
say "Hello, world"
set name to "Adriaan"
say "Welcome, " plus name>
hotgrin run hello.hot
>hotgrin check hello.hot— meet the Watcher (try--af).
>hotgrin build --windows hello.hot— now send someone your.exe. 😁
→ https://github.com/Hotgrin/hotgrin/blob/main/docs/getting-started.md
LEARN MORE / DOCS HUB
> Learn hotgrin
> Getting started — install and first program, three ways.
> The gentle tutorial — from zero to sharing your own.exe, ten friendly steps.
> The cookbook — 15 copy-paste recipes; every one verified to run exactly as shown.
> The language reference — every construct, with its Go mapping, for experienced developers.
> A complete worked project — a real loan calculator with inputs, actions, and tests.
> Example programs — small, runnable.hotfiles.
OPEN SOURCE / COMMUNITY
> Open source, built in the open hotgrin is MIT-licensed and developed publicly. Come look under the hood — or lend a hand:
> Source code — the whole language: lexer, parser, transpiler, checker. 91+ tests, CI green on every commit.
> Releases — prebuilt binaries for Windows, Linux, and macOS, published automatically.
> Roadmap — what’s next and why, prioritised by real use.
> Report a bug / request a feature — every issue is read.
> Contributing guide — two house rules: every change ships with a test, and the Watcher never raises a false alarm.
>Security policy ·
> Changelog ·
> MIT licence
> Good first contributions: a cookbook recipe · an example program · a Watcher rule (with its no-false-alarm proof) · >error-message translations into your language.
FAQ
Frequently asked questions
> Is hotgrin free?
Yes — completely free and open source under the MIT licence, for any use.
> Do I need to install anything to try it?
No. The browser playground runs entirely in your browser and shows you the generated Go plus the Watcher’s checks. To run programs on your computer, install Go (one
installer) and hotgrin (one command).
> Is it a toy language?
No. hotgrin programs compile — via Go — to real native executables, including Windows.exefiles you can hand to anyone. Testing, error handling, and safe concurrency are part of the language. It is young (v0.5.6, alpha), and the
roadmap is public.
> Why does it need Go installed?
hotgrin translates your program into Go and uses the Go toolchain to compile it. That’s how a friendly language gets professional-grade speed and cross-platform builds. (A no-install interpreter mode is on the roadmap.)
> What does “errors in Afrikaans” mean?
Add--afto any check and the Watcher explains problems in Afrikaans: “daar is geen waarde genaamd ‘totall’ hier nie — is dit ‘n tikfout?” — the same precision, in your language. More languages are planned.
> Can I use it for serious work?
It’s early-alpha: perfect for learning, teaching, hobby projects, and small real tools (the loan calculator
is a working example). For production systems, watch the roadmap — and the Go it generates is always yours to keep.
> Windows, Mac, or Linux?
All three. Prebuilt binaries ship for each on the releases page, and any machine can cross-compile a Windows.exe.
> Who makes hotgrin?
hotgrin is created by Adriaan (AJ) Louw in Johannesburg, South Africa, and developed in the open on GitHub.
ABOUT
About hotgrin
hotgrin started with a simple frustration: the first hour of programming shouldn’t be about semicolons.
Most tools solve that by being toys — hotgrin refuses. It reads like English and compiles to the technology behind serious
software, so nobody ever has to throw away what they learned here.
It’s made in Johannesburg, South Africa 🇿🇦, speaks English and
Afrikaans, and is built in the open — every commit, every test, every
decision public.
It’s version 0.5.6 and honestly alpha: small standard library, rough edges, big plans. Come play, come break it, come tell us what confused you — that’s literally how the roadmap gets written.
Ready to grin?
[ ▶ Open the playground ] [ Get started → ] [ ⭐ Star on GitHub ]:
playground URL · getting-started URL: https://github.com/Hotgrin/hotgrin
hotgrin — the language that makes you grin.
Playground · Docs · GitHub · Releases · Roadmap · Issues · Contributing
Open source under the MIT licence.
Made with a grin in South Africa. 🇿🇦
