Products · Build a dot

Quickstart

Create your first dot with the Monime CLI, run it in the browser simulator, add a page and open it on your phone.

In about ten minutes you'll have a dot running in your browser, with two pages. You need Node.js 22.12 or newer and the Monime CLI.

Create a dot

Terminal
monime dot create my-dot

The CLI asks for three things. The dot's name is what people see in Dash. The package name is a domain you own, written backwards: sl.yourcompany.my-dot. The suggested com.example.my-dot is fine for now. For the template, pick starter, which this quickstart builds on.

Then the CLI offers to install the dot and start it. Either answer is fine.

Run it in the simulator

If you said yes, the dot is already running. If you said no, run:

Terminal
cd my-dot
npm install
monime dot dev

Open the address the terminal prints, usually http://localhost:3680, and there's your dot in a phone frame, with Dash's bars and menu. What only a phone can do, like opening the dialer, shows as a short note over the phone and a line in the browser's console.

Leave the dot running. For the commands in the next steps, open a second terminal in the my-dot folder.

Change a page

Open pages/index/view.dml, change some text and save. The simulator updates right away. If you break something, the terminal points you to the line.

Add a page

Terminal
monime dot create page receipt

You get pages/receipt/, and the CLI adds receipt to dot.ts.

Now add a button on the first page that opens it. Opening a page is an action, not a mutation:

pages/index/controller.ts
export default definePage({
  // initialState and mutations stay as they are
  actions: {
    showReceipt() {
      this.navigation.push('receipt');
    },
  },
});
pages/index/view.dml
<Button onClick="showReceipt">See receipt</Button>

See Navigation for passing data to the page you open.

Open it on your phone

Stop the dev server with Ctrl-C, then:

Terminal
monime dot keys create
monime dot dev --device

keys create makes a developer key, which your phone uses to trust this computer. You only do this once. In Dash on your phone, turn on Enable Dot Debugging in Developer Settings, tap Live Test on the Dots tab and scan the QR code in your terminal. Run on a phone has more.

Build it

Terminal
monime dot build

The build checks your dot and puts it in dist/. When it's ready for customers, publish it.

Editor support

The Dot extension for VS Code gives .dml files highlighting, completion that includes your theme's own colors, gradients and icons, errors as you type, docs on hover and go to definition. It also works in Cursor and VSCodium.

  1. Download the Dot extension (version 0.1.1, for VS Code 1.91 or newer).
  2. In VS Code, open the Extensions view, click … at the top and choose Install from VSIX…, then pick the file. Or run code --install-extension dot-dml-0.1.1.vsix.

The extension uses the Dot tools installed in your dot, so it always matches the version your dot builds with. It needs Node.js 22.12 or newer on your PATH. To use another Node.js, set Dot: Node Path in VS Code's settings.

In other editors, set your editor to run monime dot lsp --stdio as its language server.

Keep reading

On this page