Start Building with Clean Language
Everything you need to install Clean Language and create your first program.
System Requirements
macOS
macOS 12 (Monterey) or later. Intel and Apple Silicon supported.
Linux
Ubuntu 20.04+, Fedora 36+, or any modern distribution with glibc 2.31+.
Windows
Windows 10 or later with PowerShell 5.1+. WSL2 also supported.
Step 1: Install Clean Language
Choose your preferred installation method below.
VS Code / Cursor Extension (Easiest)
Install the Clean Language extension and it will guide you through the entire setup, including compiler installation.
Install ExtensionUsing the Command Line
curl -fsSL https://raw.githubusercontent.com/Ivan-Pasco/clean-language-manager/main/install.sh | shirm https://raw.githubusercontent.com/Ivan-Pasco/clean-language-manager/main/install.ps1 | iexStep 2: Create Your First Program
Write a simple Clean Language program to verify your setup.
Create a New Project
mkdir my-project
cd my-project
cln initWrite Your Code
Create a file named hello.cln with the following content:
start:
string message = greet("Clean Language")
print(message)
integer result = add(5, 3)
print("5 + 3 = " + result.toString())
functions:
string greet(string name)
return "Hello, {name}!"
integer add(integer a, integer b)
return a + bCompile and Run
# Compile to WebAssembly
cln compile -o hello.wasm hello.cln
# Run with clean runtime
cln run hello.wasmExpected Output
Hello, Clean Language!
5 + 3 = 8Step 3: Learn the Basics
Explore fundamental concepts and start building real applications.
Variables & Types
Learn about Clean's powerful type system, type inference, and how to declare variables safely.
View Syntax →Functions
Understand how to write functions, work with parameters, return values, and organize reusable code.
What's Next?
Troubleshooting
Common issues and how to resolve them
cln: command not found
The Clean Language binary isn't in your PATH. Run the installer again or add it manually:
export PATH="$HOME/.cleen/bin:$PATH"Permission denied
The installer needs write access to ~/.cleen. Fix permissions:
