FOAM is a modelling tool and a class-based object system. You describe a class by its properties, methods, event topics, listeners, and dependencies — and FOAM turns that single model into a usable class plus the companion machinery an app actually needs.
It's written in JavaScript, but the model isn't bound to it. The same definition generates code for any language or platform, so one description drives web, Android Java, and iOS Swift alike.
Declare once, generate everything — the same idea as protobufs, extended past the wire all the way to persistence and views.
One model produces
classA reactive, usable object system with live properties and listeners
storageBuilt-in DAO persistence — the same interface everywhere
networkAutomatic marshaling between client and server
viewsGenerated UI that stays in sync with the model
platformsJavaScript, Android Java, and iOS Swift from one source