Adding Visual Modeling, Code Generation & Object Graphs to the software development process
Use OABuilder to visually define entities, relationships, behaviors, and validation rules.
OABuilder uses OACodeGen to generate full-stack code — including the object graph, UI templates, REST APIs, database access, and real-time sync.
Once generated, the model becomes a live, reactive object graph — powering your app's logic, UI, sync, and data access in real time.
// select all of the Open Orders
Hub hubOrder = new Hub():
hubOrder.select(OrderPP.isOpen());
// create a Master-Detail
Hub hubOrderItem = hubOrder.getDetailHub(Order.P_OrderItems);
for (Order order : hubOrder) {
// .. do something
}
// create filtered Hub for open Orders from Customers with large balances
Hub hubOrderOverDue = new Hub(Order.class):
HubFilter hf = new HubFilter(hubOrder, hubOrderOverDue);
hf.addGreater(OrderPP.customer().currentBalance(), 5000);
// hubOrderOverDue is now populated
hubOrderOverDue.onAdd(onEvent -> {
// custom code
});
// sample
order = hubOrder.findFirst();
hubOrder.setActiveObject(order); // this will auto populate hubOrderItem
OA’s modular libraries can be extended or replaced. Build your own reusable components to match your architecture or business needs.
Use your existing tools — IntelliJ, Eclipse, Maven, Git — to customize, test, and deploy as usual.
Regenerate your app from the model anytime. OA ensures your code stays synchronized and fully runnable.