Capawesome June 2025 Update¶
The Capawesome June update is here! This update includes new features and improvements for the Capawesome CLI and our Plugins.
CLI¶
Uploading bundles larger than 100 MB¶
Starting with version 1.13.0, the Capawesome CLI now supports uploading bundles larger than 100 MB. This feature is particularly useful for apps with large assets or dependencies. The CLI automatically splits the bundle into smaller chunks and uploads them in parallel, ensuring a faster and more reliable upload process.
Plugins¶
We have made several improvements to our plugins this month, enhancing their functionality and usability. This section highlights the most significant changes.
App Shortcuts¶
Support Base64 encoded icons¶
The App Shortcuts plugin has been updated to support Base64 encoded icons on Android. This allows developers to use icons directly from their code without needing to store them as separate files, simplifying the development process and allowing for more dynamic icon management.
Biometrics¶
Add enroll()
method¶
The Biometrics plugin now supports prompting users to enroll their biometrics. The new enroll()
method allows developers to trigger the biometric enrollment process, enabling users to set up their biometrics directly from the app. This feature enhances user experience by making it easier to enroll biometrics without navigating to device settings.
import { Biometrics } from '@capawesome/capacitor-biometric';
const enroll = async () => {
try {
await Biometrics.enroll();
console.log('Biometric enrollment successful');
} catch (error) {
console.error('Biometric enrollment failed:', error);
}
};
This method is only available on Android.
File Picker¶
Support for iOS for the copyFile(...)
method¶
The File Picker plugin has been enhanced with support for the copyFile(...)
method on iOS. This feature allows developers to copy files within the app's file system, making it easier to manage picked files and organize them as needed.
import { FilePicker } from '@capawesome/capacitor-file-picker';
import { Directory, Filesystem } from '@capacitor/filesystem';
const copyFile = async () => {
const { uri: toUri } = await Filesystem.getUri({
directory: Directory.Documents,
path: 'old/file.txt',
});
const { uri: fromUri } = await Filesystem.getUri({
directory: Directory.Documents,
path: 'new/file.txt',
});
await FilePicker.copyFile({
from: fromUri,
to: toUri,
overwrite: true,
});
};