Design desktop and web apps.
Like VB5, for 2026.

Draw a form, double-click a button, write what it does, press F5. Visualised builds real apps for Windows and Linux, and the same file runs in a browser.

The Visualised designer: a form with a menu, a frame and anchored controls, and the property grid

Everything a form designer should be

Simpler than a website form builder, and it builds real desktop apps. The designer is itself written in VML, Visualised's own markup.

Right-click to add

No toolbox to hunt through. Right-click the form, choose a control, drag it into place. Snaps to the grid.

Anchors

Pin controls to the form's edges and they move and stretch as the window resizes, on the desktop and in the browser.

Frames

Drop controls into a Frame and they travel with it. Anchor the frame too, and whole areas stretch together.

Menus in a minute

Add Menu gives you File, Edit and Help. Click to edit, right-click to add. Or use the VB5-style Menu Editor.

A live property grid

Every property, grouped, with the right editor for each. Never stale: change something anywhere and it shows.

Multi-form apps

Forms open forms, modal or not, read each other's controls, and hand back dialog results.

Export your app

One click for a Windows app, a Linux app, or a web page that works offline. Double-click and it runs: no installer, no runtime to find.

The same file, in a browser

Press F6 and your form opens as a web page: one self-contained file, no server, no framework. Anchors become CSS; your Lua scripts run unchanged in WebAssembly.

Try the live demo → Type your name, open the menus, and resize the window.

A VML form running in a web browser

Any language you like

Every script, in every language, talks to the form through one simple function: Vml().

Lua (built in)PythonC# (optional)BashPowerShellanything, via the vml command
-- Lua
local name = Vml("GetProperty", "txtName", "Text")
Vml("SetProperty", "lblHello", "Text", "Hello, " .. name)

// C#
Vml("SetProperty", "lblTime", "Text", $"{DateTime.Now:HH:mm}");

# Bash
name=$(vml get txtName Text)
vml set lblHello Text "Hello, $name"
@Window MainWindow
Title=My Application

@Button SaveBtn
Parent=MainWindow
Content=Save
OnClick=SaveScript

@Script SaveScript
Interpreter=lua
Vml("InfoDialog", "Saved!")

VML: markup you can read

Visualised apps are written in VML, a flat markup: no nesting, no closing tags. Each control names its parent. Easy to read, easy to diff, easy to generate.

Share what you build

A Visualised app is a single readable file. Soon you'll be able to publish yours to visualised.org, the community app store, and install other people's apps in one click, on the desktop or straight in the browser.

Coming soon.

visualised.org

Apps made with Visualised, by the people who use it. Free to share, easy to read before you run them, and every one runs on Windows, Linux and the web.

Download Visualised

Free for individuals. Windows 10 and 11, and Linux.

Windows

Download Visualised-Setup.exe

Installs for you only, no admin needed. Associates .vml files and can add vml to your PATH. Windows may show a SmartScreen warning: click More info, then Run anyway. Or get the portable zip.

Linux

curl -fsSL https://github.com/wallisoft/vml-releases/releases/latest/download/install.sh | bash

Ubuntu 22.04+ and similar. Installs into your home folder: the designer in your app menu, vml in your terminal, and .vml files opening in VML.