Skip to content
Delphi had one in 1995

Draw the screen. Ship the file.

A visual form designer for DeniseUI, and a Denise application itself — not Tauri, not egui, not a web page. The canvas draws your form with the same code that will draw it on the panel, so what is on screen is what ships, to the pixel.

macOS, Windows and Linux. No Rust toolchain needed. MIT licensed.

Drag out of the palette

Every widget the file format knows, filtered by name, dropped where you let go — and the drop lands in whatever panel is under it.

Move, resize, align

Eight handles, snapping guides against siblings and the form’s own edges, align and distribute, same-size, and grouping.

Edit every property

The inspector holds the rectangle, the role, the text, visibility, tab order, the event names — and dims the ones the file does not write.

Press F5

Preview mode hides the scrim that keeps the form from behaving while it is being designed. That is the whole of preview mode.

Undo, exactly

Every edit lands in the file as a targeted change and undoes byte for byte, because the model is the document rather than a struct serialised over it.

Keep your editor open

The designer watches the file it has open and reads it again when your editor saves, keeping the selection by name.

The file

A form is text, and stays text

What the designer writes is a .dform file: KDL, readable in a diff, hand-editable, and your comments survive a save. The same file is loaded at run time by denise-forms in about five lines, or generated into Rust the compiler checks.

That is what makes a screen a deployable thing: copy a file over the one on the panel and the application draws the new screen, with every event still reaching its function — or fails at load naming the one that does not.

Dragging out of the palette
Tab order, numbered on the form
F5: the form runs on the canvas
The file changed underneath: it asks

Download

Each archive carries the designer, the denise-forms command line tool, and the reference form to open. Every release builds all four.

Each has a .sha256 beside it on the release page.

These are not signed

There is no Apple Developer account behind this project and no Windows code-signing certificate, and saying so is cheaper than pretending otherwise.

  • macOS — right-click Denise Designer.app and choose Open, then Open again. macOS remembers; every launch after that is a double-click.
  • Windows — SmartScreen offers More info, then Run anyway.
  • Linux — tar xzf and run it. Linux does not care.

Or build it, which needs no explanation

$ cargo run -p denise-designer
$ cargo run -p denise-designer -- forms/reference.dform