Apache Cordova

Apache Cordova is an open-source mobile development framework that lets developers build mobile applications using standard web technologies, described in its own documentation as allowing “standard web technologies - HTML5, CSS3, and JavaScript for cross-platform development.” Rather than writing separate native code for each operating system, developers build a web application and Cordova packages it so it can be installed and run as a native app on platforms such as Android and iOS.

The framework originated from PhoneGap, a product created by the company Nitobi and acquired by Adobe in 2011. When Adobe contributed the underlying code to the Apache Software Foundation, the open-source core was given the name Apache Cordova, with PhoneGap continuing for a time as Adobe’s branded distribution built on top of it. This split made Cordova the community-governed foundation for an entire category of hybrid mobile development.

At the heart of Cordova is the WebView, a special full-screen browser component embedded in a native application shell. As the documentation explains, a “Cordova-enabled WebView may provide the application with its entire user interface,” so the app’s screens are effectively web pages rendered by the device’s browser engine rather than native widgets. The web layer manipulates the DOM and runs JavaScript exactly as it would in a browser, but is wrapped so it behaves and installs like a native app.

Because a plain WebView cannot reach native device capabilities on its own, Cordova bridges the gap with plugins. These plugins expose a JavaScript API to the web layer while implementing the underlying functionality in native code, giving access to features such as the camera, battery status, contacts, and other device sensors. Cordova maintains a set of core plugins for common needs, and a broader ecosystem of third-party plugins extends the reach further.

Cordova became the foundational technology for the hybrid app movement, in which web developers could reuse their existing HTML, CSS, and JavaScript skills to ship to app stores. It served as the original native runtime for higher-level UI frameworks, most notably Ionic, and its WebView-wrapping approach stood as a counterpoint to frameworks like React Native and Flutter that target native rendering instead.