Documentation
Documentation/Build and operate

Applications

Build focused tools on the same definitions, source connections, and action policies.

On this page

Applications are versioned definitions

An application is a versioned catalog artifact. It can combine built-in declarative surfaces or provide its own HTML, JavaScript, styles, and assets as a bundle. It is authored, reviewed, and promoted like other platform definitions. Bundle apps can also include server code on instances configured with an app runtime.

Use an app to give a team the small set of information and decisions it needs for a particular job. An operator can configure an app as the home destination for selected roles, so those users arrive directly at their working tool.

Choose built-in surfaces when they fit

Built-in surfaces are one way to build an application. Choose a surface according to the task: a single metric, a list to inspect, a distribution to compare, or a question to explore. The ask surface needs an authorized model profile; ordinary data surfaces do not require a model call to render.

  • stat presents a single value and optional thresholds.
  • table presents query results with declared fields and optional row actions.
  • bars presents a labeled distribution.
  • search runs a parameterized lookup after the user enters a value.
  • ask translates a question into a guarded read query.
  • objects lists ontology instances through object-level permissions.

Govern the data and actions

Query surfaces use the read-only SQL guard and bounded results. General query surfaces are capped at 200 rows and a 15-second query timeout; search has a smaller result limit. Hidden source columns are filtered, and object surfaces additionally apply the reader's object row and field scope.

An app's read permission does not grant permission to invoke its row actions. Those actions pass through the ordinary action gate. Review source-side access rules for query surfaces as part of the application's design.

Calls from a bundle app to nondro's app API are limited to its declared operations and resources and the viewer's permissions.

Publish and use

Preview a draft and check its sources, field names, permissions, and intended actions before promotion. A preview does not replace the live version; publishing requires promotion under the organization's permissions. Open the live app with a representative user role to verify the experience, including empty, withheld, and failed-data states.

Bundle apps run at their own addresses. Access checks the person's sign-in, app permission, declared audience, and network rules. An audience can include named external people who sign in, as well as individuals or teams inside the organization.

Apps have a web app manifest for supported browser installation on a phone or desktop. Installing an app does not remove sign-in or grant access to additional data.