Capacitor
Open source native runtime for building web apps that run as genuinely native apps on iOS and Android, and installable PWAs on the web, with a plugin system for native device APIs.
- Actively maintained
- Well documented
- Permissive license
Overview
Capacitor is a native runtime that lets you build a single web app and run it as a genuinely native app on iOS and Android, as well as an installable Progressive Web App, rather than rendering inside a plain embedded browser view. It exposes a consistent, promise-based JavaScript API for native device capabilities (camera, geolocation, filesystem, push notifications, and more), backed by native Swift and Kotlin/Java implementations under the hood.
Unlike a full opinionated framework, Capacitor is intentionally framework-agnostic: it works with any web app (React, Vue, Angular, Svelte, or plain JavaScript) and is commonly paired with the Ionic UI framework, though it doesn't require it. Its plugin architecture lets teams write custom native functionality once per platform and call it from web code, and a large ecosystem of community and official plugins already covers most common native integrations.
Capacitor is a fit for teams that already have (or want to build) a web app and want to ship real native mobile apps from the same codebase, without committing to a framework that abstracts away native platform access.
Why it's in this catalog
Catalog rating: ★★★★☆ (4/5)
Framework-agnostic native runtime genuinely differs from Expo/React Native/Flutter's full-framework approach, in a category with only 3 prior entries -- a strong, distinct pick.
- Mature
- Vendor-backed
- Categories
- Mobile
- Languages
- TypeScript
- License
- MIT
Related Projects
Flutter
BSD-3-ClauseGoogle's UI toolkit for building natively compiled applications for mobile, web and desktop from a single codebase.
Actively maintained
- Mobile
React Native
MITFramework for building native mobile apps for iOS and Android using React.
Actively maintained
- Mobile
Expo
MITOpen source platform and toolchain for building universal native apps with React Native.
Actively maintained
- Mobile
Spotted an error? Suggest an edit on GitHub.