Skip to content

Ontimize Overview

Under Construction - Preview

💡 TL;DR - Front Office App Dev

The Ontimize App Builder provides extremely rapid "front office" app creation, with unlimited customization and wealth of UI components (editable grid, graph, tree, etc). It complements the "back office" Admin App.

While a separate product, it is highly integrated with API Logic Server:

  1. Unified Database: driven by the same Data Model, and underlying JSON:API / logic
  2. Unified Repository: Artifacts are files stored in your project directory for unified source, and managed by any standard IDE
  3. Shared Dev Server: the API Logic Server serves the API, the Admin App, and the Ontimize App. This simplfies development

API Logic Server automation can simplify app dev by eliminating the daunting "clean sheet of paper". This can make it difficult. By contrast, automated app creation means you alter what's been built through automation.

It should be possible for users with limited Python, Flask, SQLAlchemy, JavaScipt technology (npm build, etc), or Ontimize knowledge to
1. Create a backend API
2. Declare rules for multi-table derivations and constraints
3. Create a front office Ontimize app, and
4. Make significant customizations

Basic Work Flow

After creating your project in the usual manner, follow the steps below.

1. Create Application

ApiLogicServer app-create --app=ont_1

This creates ui/ont_1/app_model.yaml.

For the prototype, we also need to:

cd ApiLogicProject
ApiLogicServer add-cust
ApiLogicServer add-auth
Parallel dev

At this point, distinct dev teams can safely proceed in parallel:

  • backend: develop logic and custom APIs (e.g., for application integration)
  • ui: proceed as described below

Salient points:

  • logic is automatically factored out of ui code (in particular, not in controllers). This increases re-use across apps, and re-use for integration

  • ui dev is not dependent on server api creation -- JSON:APIs are self-serve, so ui developers are not blocked by backend api dev

2. Edit Model

Edit to remove unwanted entities, order columns, set templates, etc.

Show me how -- Edit Model

 

app_create

3. Build Application

ApiLogicServer app-build --app=ont_1

4. Customize Application

This will the the data model to build out the Ontimize app. It's executable.

You can then use your IDE or other tooling (e.g., Ontimize CLI) to edit the artifacts to customize the look and feel.

Show me how -- Customize Application

 

app_create

5. Run

Execution is standard to Ontimize:

cd ui/app1
npm install
npm start

Browse to localhost:4299, and login as admin/p.