Build with Clean Language

A modern, type-safe programming language that compiles to WebAssembly. Build fast, safe, and portable applications with an elegant syntax.

Why Choose Clean

Built for Modern Development

Clean Language combines the safety of Rust with the readability of Python, compiling to high-performance WebAssembly.

Type Safety

Catch errors at compile time with a powerful type system that supports inference, generics, and strict null safety.

WebAssembly Target

Compile directly to WebAssembly for near-native performance on any platform — browsers, servers, and edge computing.

Clean Syntax

Write readable, maintainable code with indentation-based blocks, no semicolons, and intuitive control flow.

Memory Safe

Built-in memory safety without garbage collection. The compiler prevents memory leaks and dangling references.

Async/Await

First-class async support for concurrent programming. Handle I/O operations efficiently with clean, composable async code.

Developer Experience

Rich IDE support with VS Code extension, comprehensive error messages, and integrated package management.

See It In Action

Clean and Powerful

Write less code that does more. Clean Language's expressive syntax lets you focus on what matters.

hello.cln
functions:
    string greet(string name)
        return "Hello, " + name + "!"

    integer add(integer a, integer b)
        return a + b

start:
    string message = greet("World")
    _print(message)

    integer result = add(5, 3)
    _print("5 + 3 = " + _itos(result))
Output
Hello, World!
5 + 3 = 8
Built for the AI Era

Code With AI, Not Around It

The first language designed for humans and AI to write together. Built-in compiler access, intent keywords, and zero-config plugins.

AI Understands Your Code

Built-in intent and spec keywords give AI context about what your code does and why it exists.

functions:
    number calculateDiscount(number price, number pct)
        intent "Calculate percentage discount"
        spec "specs/pricing.spec.cln"
        return price * (pct / 100)

Real-Time Compiler Access

MCP server lets AI tools compile, check, and validate code as they write it. Errors caught before you even see them.

$ cln mcp-server

// AI tools can:
//   check types in real-time
//   compile to WebAssembly
//   lint and format code
//   scaffold full projects

Zero Configuration

Plugin auto-detection means AI-generated code just works. Put a file in the right folder and the compiler knows what to do.

/api/     → HTTP routes
/data/    → Database models
/auth/    → Authentication
/ui/      → UI components
Quick Start

Start Building in Minutes

Get up and running with Clean Language in three simple steps.

1

Install

Install Clean Language with a single command using cleen, our package manager.

2

Write

Create .cln files with our elegant, indentation-based syntax. No semicolons needed.

3

Compile & Run

Compile to WebAssembly and run on any platform — browsers, servers, or edge computing.

Join The Community

Join the Community

Connect with developers building the future of type-safe, WebAssembly-first programming.

GitHub

Contribute to the project, report issues, and explore the source code.

View Repository

Documentation

Comprehensive guides, API references, and tutorials to master Clean Language.

Read The Docs

Discord Community

Join developers worldwide. Get help, share projects, and discuss ideas.

Join Discord