1# Overview 2 3The JavaScript-compatible web-like development paradigm uses the classical three-stage programming model, in which HML is used for building layouts, CSS for defining styles, and JavaScript for adding processing logic. UI components are associated with data through one-way data-binding. This means that when data changes, the UI automatically updates with the new data. This development paradigm has a low learning curve for frontend web developers, allowing them to quickly transform existing web applications into ArkUI applications. It could be helpful if you are developing small- and medium-sized applications with simple UIs. 4 5For details about the components, see [Component Reference (JavaScript-compatible Web-like Development Paradigm)](../reference/apis-arkui/arkui-js/js-components-common-attributes.md). 6 7 8## Overall Architecture 9 10ArkUI with the JavaScript-compatible web-like development paradigm consists of the following layers: application layer, frontend framework layer, engine layer, and porting layer. 11 12 13 14 15 16- Application 17 18 Contains applications with FAs you developed. The FA application in this document refers to the application with FAs developed using JavaScript. 19 20- Framework 21 22 Parses UI pages and provides the Model-View-ViewModel (MVVM), page routing, custom components and more for front end development. 23 24- Engine 25 26 Accomplishes animation parsing, Document Object Model (DOM) building, layout computing, rendering command building and drawing, and event management. 27 28- Porting Layer 29 30 Abstracts the platform layer to provide abstract interfaces to connect to the platform. For example, event interconnection, rendering pipeline interconnection, and lifecycle interconnection. 31