Skip to main content

Publish your app

Publishing is two steps: put the built project somewhere your users can reach over HTTPS, then register each app in MachineMetrics.

1. Deploy

You own the hosting. MachineMetrics does not run your code. The requirements are the ones your IT team would set anyway:

  • A persistent server or static host that your IT organization sanctions.
  • A domain they control, served over HTTPS.
  • Reachable from your users' browsers, not only from inside your network, if people will use the app away from the shop.

The project builds to static files:

cd my-app/app
npm run verify
npm run build

Serve the dist directory. The project's Dockerfile and docker-compose.yml package it behind nginx if you prefer a container. Because the app is a single-page app, every path must fall back to index.html, including the sign-in callback at /authorize/mm/callback.

Netlify, the built-in option

The Carbide plugin's deploy skill can put a project on Netlify for you. It builds, creates the site, deploys to production, and then walks you through the two things a new Netlify site needs before it works: making it public, and adding the site URL to your OAuth client's redirect list. Ask your assistant to deploy, or run the same steps yourself:

npx --yes netlify-cli deploy --prod --dir=dist --site-name <your-site>
mmdev oauth update --client-id <id> --name "<name>" --redirect "<existing redirects>,https://<your-site>.netlify.app/authorize/mm/callback"

--redirect replaces the whole list, so include the existing entries.

2. Register

An IT admin registers apps. In MachineMetrics open Builder → Manage Apps → Register App and fill in, for each app in the project:

FieldWhat to enter
NameShown on the card and in the picker
DescriptionOne or two sentences, up to 256 characters
URLThe app's full URL on your deployment, for example https://myapp.example.com/ or https://myapp.example.com/reports
ThumbnailA square image
TypePage, Widget, or Tab

Registering publishes the app to your company:

  • Pages appear on My Apps.
  • Widgets appear in the dashboard widget picker.
  • Tabs appear in the Operator Dashboard tab picker under Settings → Operator Dashboard.

Registration means the app is ready for your team. Test it in the playground and against your deployment first.

Builder is in beta. If you do not see it, ask your MachineMetrics account team.

Updating

Deploy a new build to the same URL and users get it on their next load. Change the registration only when the URL, name, description, or thumbnail changes.