Capacitor 9 Starts Here
Capacitor 9 is underway.
This update covers two pieces of that work: the first Capacitor 9 alpha for early testing, and improved compatibility for Cordova plugins adopting Swift Package Manager through Cordova iOS 8.
Capacitor 9 Alpha 1 is out — and we need testers!
Capacitor 9 Alpha 1 is now published!
The headline change in this alpha is that Cordova is now optional.
Historically, Cordova support has been bundled and part of the Capacitor runtime even for apps that never used Cordova plugins. In Capacitor 9, that changes. Cordova is no longer pulled in by default — it’s only included when you need it.
For apps that do not use Cordova plugins, this means less native code in your iOS and Android projects, and less initialization work at startup.
This is one of the most important runtime changes made to Capacitor, and we need real-world feedback before Capacitor 9 reaches GA.
If you have a project you can test with the alpha, these plugin setups are especially helpful:
- Only Capacitor plugins: does the app build, install, and run cleanly without Cordova being pulled into the runtime path?
- Both Capacitor and Cordova plugins: do both plugin types continue to build and behave as expected?
- Only Cordova plugins: does Cordova plugin behavior remain unchanged? This setup may be less common, but it is valuable for finding edge cases.
To try the alpha, install the Capacitor packages using the next tag using your preferred package manager. For npm projects:
npm install @capacitor/core@next @capacitor/ios@next @capacitor/android@next --legacy-peer-deps
npm install --save-dev @capacitor/cli@next --legacy-peer-deps
The --legacy-peer-deps flag helps avoid npm peer dependency conflicts while testing this alpha. If you use pnpm, Yarn, or another package manager, use the equivalent command for your project.
Please file any bugs you find on the Capacitor repository with the label cap9-alpha.
Cordova plugin SPM dependencies now resolve in Capacitor
Cordova iOS 8 introduced support for declaring Swift Package dependencies within a Cordova plugin. Capacitor did not previously support those declarations when a Cordova plugin with child SPM dependencies was used inside an SPM-based Capacitor iOS project.
Now it does — with fixes available in the latest Capacitor 7 and Capacitor 8 releases.
When a Capacitor iOS project uses Swift Package Manager, Cordova plugins that declare SPM dependencies through the Cordova iOS 8 format will now have those dependencies resolved automatically.
What’s next?
This is the first public step in the Capacitor 9 cycle. Alongside this work, the team is updating iOS to support Scene UI, exploring how Capacitor needs to flex for newer device form factors, and investing in AI-assisted tooling and community-facing AI skills.
Try the alpha, open issues for anything unexpected, and keep an eye on next as Capacitor 9 continues to take shape.


