A declarative, reactive language for the web. Like HTML, just better.

A counter in one file.

Sinth reads the declaration, wires up the state, and compiles to plain HTML. No build config, no dependency tree, no runtime.

var str userName = "User"
var num count = 0
Main {
    Heading(level: 1) { count }
    Button(onClick: count += 1) { "Increment" }
    Input(bind: userName, placeholder: "Type in your username")
    Paragraph() { userName + " has reached Count " + count + "!" }
}

Three things Sinth does well

Declarative

Describe the outcome. Sinth handles the update logic.

Simple

Install the CLI. Write .sinth files. Get HTML. No config.

Reactive

Variables drive the DOM. The DOM drives them back. One keyword.

Install in one command

npm install -g @yannosay/sinth

Then run sinth init to scaffold a project.