Technology1 min read

Show HN: Lasm – Write formally verified webapps in Lean for Node/serverless/edge

By · Published by Everything Blog

In short

Lasm is a newly introduced tool that enables programmers to write formally verified web applications directly in the Lean programming language. Beyond supporting traditional Node.js runtimes, the software specifically targets modern serverless architectures and distributed edge infrastructure. This capability provides a pathway for developers to apply rigorous language verification to applications deployed across varied modern cloud environments.

Key points

  • Lean language users can now compile and target modern cloud and edge infrastructure envir…: Lean language users can now compile and target modern cloud and edge infrastructure environments.
  • Formally verified application development is now supported across decentralized hosting s…: Formally verified application development is now supported across decentralized hosting setups and serverless systems.
  • The tool bridges formal verification principles with mainstream deployment runtimes inclu…: The tool bridges formal verification principles with mainstream deployment runtimes including Node.js.

Lean 4 for the JavaScript and WebAssembly world. Lasm compiles ordinary Lean 4 programs ahead of time to WebAssembly. One Lean code base can become a Node server, a serverless or edge function, a WASI/Fastly module or a browser app. Because it is Lean, you can prove properties of the code you deploy. The flagship example, Conduit, is the RealWorld app with 117 proved theorems. Lasm ships on npm and brings Lean, Lake and its build tools with it; you only need Node (or Bun or Deno).

npm create @lasm@latest my-app -- --template hono # then: cd my-app && npm install && npm run dev

AI agents: this README is complete on its own. llms.txt

is the short

index, and docs/AI.md lists the rules that save you from wrong turns.

If Lasm is useful to you, I'd appreciate your sponsorship (more below).

Fact | Value |

---|---|

Current version | @lasm/cli 0.3.5 (release notes); npm view @lasm/cli version |

Install | npm install -D @lasm/cli (bin: lasm ), or no install: npx @lasm/cli … ; new project: npm create @lasm@latest…

Technology