Capacitor
Build cross-platform Native Progressive Web Apps for iOS, Android, and the ...
README
⚡️ Cross-platform apps with JavaScript and the Web ⚡️
Capacitor lets you run web apps natively on iOS, Android, Web, and more with a single codebase and cross-platform APIs.
Capacitor provides a cross-platform API and code execution layer that makes it easy to call Native SDKs from web code and to write custom native plugins that your app may need. Additionally, Capacitor provides first-class Progressive Web App support so you can write one app and deploy it to the app stores _and_ the mobile web.
Capacitor comes with a Plugin API for building native plugins. Plugins can be written inside Capacitor apps or packaged into an npm dependency for community use. Plugin authors are encouraged to use Swift to develop plugins in iOS and Kotlin (or Java) in Android.
Getting Started
Capacitor was designed to drop-in to any existing modern web app. Run the following commands to initialize Capacitor in your app:
- ```
- npm install @capacitor/core @capacitor/cli
- npx cap init
- ```
Next, install any of the desired native platforms:
- ```
- npm install @capacitor/android
- npx cap add android
- npm install @capacitor/ios
- npx cap add ios
- ```
New App?
For new apps, we recommend trying the Ionic Framework with Capacitor.
To begin, install the Ionic CLI (npm install -g @ionic/cli) and start a new app:
- ```
- ionic start --capacitor
- ```
FAQ
What are the differences between Capacitor and Cordova?
In spirit, Capacitor and Cordova are very similar. Capacitor offers backward compatibility with a vast majority of Cordova plugins.
Capacitor and Cordova differ in that Capacitor:
- takes a more modern approach to tooling and plugin development
- treats native projects as source artifacts as opposed to build artifacts
- is maintained by the Ionic Team 💙😊
See the docs for more details.
Do I need to use Ionic Framework with Capacitor?
No, you do not need to use Ionic Framework with Capacitor. Without the Ionic Framework, you may need to implement Native UI yourself. Without the Ionic CLI, you may need to configure tooling yourself to enable features such as livereload. See the docs for more details.
Contributing
See [CONTRIBUTING.md](./CONTRIBUTING.md).
Contributors
Made possible by the Capacitor community. 💖