Rename .go to .kuki. It compiles.
Kukicha is a strict superset of Go. Your existing code works without changes. No rewriting or new build systems required.
v0.1.4 — latest release ↗
Strict Go Superset No Lock-in Single Binary
Kukicha adds pipes, onerr, enums, and if-expressions to the Go ecosystem. Rename .go to .kuki and it compiles without changes. Adopt new features one line at a time.
Stem Panic is a game written in Kukicha, running live as WASM. Built with Ebitengine by Hajime Hoshi.
Loading source…
Kukicha is a strict superset of Go. Your existing code works without changes. No rewriting or new build systems required.
Pipes, onerr, enums, if-expressions, and readable operators. Add these to your Go code one line at a time.
The kukicha brew command converts your .kuki files into standalone, idiomatic Go. There is no vendor lock-in.
data, err := fetchData()
if err != nil {
return fmt.Errorf("fetch: %w", err)
}
result, err := parse(data)
if err != nil {
return fmt.Errorf("parse: %w", err)
}
label := ""
if count == 1 {
label = "item"
} else {
label = "items"
}
result := fetchData()
|> parse()
onerr return explain "pipeline failed"
label := if count == 1 then "item" else "items"
Kukicha is a strict superset of Go. Both syntaxes compile, so use whichever you prefer.
The compiler detects SQL injection, XSS, SSRF, path traversal, and command injection before your code runs.
Includes support for fetch, slice, sort, MCP, LLM, HTML, and shell commands. Built for CLI tools and AI agents.
Compiles to a single binary with no runtime overhead. Built-in WASM support and Go's concurrency model.
kukicha-blend main.go: See your Go code with Kukicha idioms