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.
Simpler than a website form builder, and it builds real desktop apps. The designer is itself written in VML, Visualised's own markup.
No toolbox to hunt through. Right-click the form, choose a control, drag it into place. Snaps to the grid.
Pin controls to the form's edges and they move and stretch as the window resizes, on the desktop and in the browser.
Drop controls into a Frame and they travel with it. Anchor the frame too, and whole areas stretch together.
Add Menu gives you File, Edit and Help. Click to edit, right-click to add. Or use the VB5-style Menu Editor.
Every property, grouped, with the right editor for each. Never stale: change something anywhere and it shows.
Forms open forms, modal or not, read each other's controls, and hand back dialog results.
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.
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.
Visualised for Android runs the apps you make, and lets them use the phone. The same Vml() calls work on the desktop and in a browser too, each doing the nearest sensible thing, so one script runs everywhere.
New Phone Form gives you a form the size of a phone held upright. A wider form is scaled to fit the screen.
GetLocation hands your script where the phone is. TakePhoto and PickPhoto put a picture straight into an Image.
Notifications in the phone's own list, text handed to any other app, words said out loud, a buzz, even the torch.
Open an app from a web address, tap Keep on this phone, and it runs anywhere with no connection. Files it saves go to Downloads.
An app can ask to keep going while the phone is used for something else, with a notice to tap to come back.
Location, camera, microphone and notifications are the phone's to grant: the app asks once, and you can say no.
Coming in the next desktop release: Preview on Phone, which shows the form you're drawing on your phone from a QR code. Get the Android app →
Every script, in every language, talks to the form through one simple function: Vml().
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!")
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.
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.
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.
Free for individuals. Windows 10 and 11, and Linux. Android for the apps you make.
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.
curl -fsSL https://github.com/wallisoft/vml-releases/releases/latest/download/install.sh | bashUbuntu 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.
Android 10 or later, 100 KB. Runs apps made with Visualised; the designer itself is for Windows and Linux. On a computer? Open visualised.io on your phone and tap Download.
Installing. Visualised isn't on Google Play yet, so Android checks with you twice. First it asks to let your browser install apps: allow it. Then Google Play Protect says it doesn't recognise the app: that's expected for anything not from Play, and it lets you carry on and install anyway. The app is signed by Wallisoft and asks for location, camera, microphone and notifications only so the apps you run can use them; you can refuse any of them.