Skip to content

Capawesome August 2025 Update

The Capawesome August update is here! This update includes new features and improvements for Capawesome Cloud and our Plugins. Let's take a look at the most important changes.

Cloud

SOC 2 Type 2 Compliance

We are excited to announce that Capawesome Cloud is now SOC 2 Type 2 compliant. This means that we have implemented rigorous security controls and processes to protect your data and ensure the highest level of privacy and security.

Check out our announcement post for more details on our SOC 2 Type 2 compliance.

Plugins

Accelerometer

We have published a new Accelerometer plugin that allows you to access the device's accelerometer sensor data on iOS and Android.

import { Accelerometer } from '@capawesome-team/capacitor-accelerometer';

const getMeasurement = async () => {
  const measurement = await Accelerometer.getMeasurement();
  console.log("X: ", measurement.x);
  console.log("Y: ", measurement.y);
  console.log("Z: ", measurement.z);
};

Check out the documentation for more information on how to configure and use the plugin.

Android Edge-to-Edge Support

The Android Edge-to-Edge Support plugin has received small bug fixes. Please check out the CHANGELOG.md for more details.

Asset Manager

The Asset Manager plugin has received small bug fixes. Please check out the CHANGELOG.md for more details.

Audio Recorder

The Audio Recorder plugin now supports setting audioSessionCategoryOptions on iOS when starting a recording. This allows you to customize the audio session behavior, such as allowing mixing with other audio sources or enabling Bluetooth support.

import { AudioRecorder, AudioSessionCategoryOption } from '@capawesome-team/capacitor-audio-recorder';

const startRecording = async () => {
  await AudioRecorder.startRecording({
    audioSessionCategoryOptions: [AudioSessionCategoryOption.DuckOthers],
  });
};

Firebase

All Firebase plugins have been updated and received several small bug fixes. Please check out the CHANGELOG.md files of the respective plugins for more details.

NFC

The NFC plugin has received several improvements and bug fixes. Notably, we have added a new mapUriIdentifierCodeToString utility function that maps URI identifier codes to their corresponding string representations. Additionally, the convertBytesToString method now accepts Uint8Array types, making it more versatile.

import { NfcUtils, UriIdentifierCode } from '@capawesome-team/capacitor-nfc';

const mapUriIdentifierCodeToString = () => {
  const utils = new NfcUtils();
  const { prefix } = utils.mapUriIdentifierCodeToString({ identifierCode: UriIdentifierCode.HttpsWww });
  console.log(prefix); // Outputs: "https://www."
};

const convertBytesToString = () => {
  const utils = new NfcUtils();
  const { text } = utils.convertBytesToString({ bytes: [72, 101, 108, 108, 111] });
  console.log(text); // Outputs: "Hello"
};

Pedometer

We have published a new Pedometer plugin that allows you to access step count and distance data from the device's built-in pedometer on iOS and Android.

import { Pedometer } from '@capawesome-team/capacitor-pedometer';

const getMeasurement = async () => {
  const { measurement } = await Pedometer.getMeasurement();
  console.log("Average Active Pace:", measurement.averageActivePace);
  console.log("Current Cadence:", measurement.currentCadence);
  console.log("Current Pace:", measurement.currentPace);
  console.log("Distance:", measurement.distance);
  console.log("Floors Ascended:", measurement.floorsAscended);
  console.log("Floors Descended:", measurement.floorsDescended);
  console.log("Number of Steps:", measurement.numberOfSteps);
};

Check out the documentation for more information on how to configure and use the plugin.

RealtimeKit

We have published a new RealtimeKit plugin that provides real-time communication capabilities for your Capacitor apps using the RealtimeKit SDK. With RealtimeKit, you can easily integrate programmable, and easily customizable live video and voice.

import { RealtimeKit } from '@capawesome-team/capacitor-realtimekit';

const startMeeting = async () => {
  await RealtimeKit.startMeeting({
    authToken: 'your-auth-token',
    enableAudio: true,
    enableVideo: true,
  });
};

Screen Orientation

The Screen Orientation plugin has received small bug fixes. Please check out the CHANGELOG.md for more details.

Share Target

We have published a new Share Target plugin that allows your app to receive shared content from other apps on Android, iOS and Web. This plugin enables your app to appear in the system share sheet, allowing users to share text, images, URLs, and other types of content directly to your app.

Here's a simple example of how to use the Share Target plugin to listen for shared content:

import { ShareTarget } from '@capawesome-team/capacitor-share-target';

const addListener = async () => {
    await ShareTarget.addListener('shareReceived', (event) => {
        console.log('Share received:', event);

        // Handle shared files
        if (event.files) {
          event.files.forEach(async (fileUrl) => {
            const response = await fetch(fileUrl);
            const blob = await response.blob();
            // Process the file...
          });
        }
    });
};

Make sure to check out the documentation for more information on how to configure and use the plugin.

Speech Recognition

The Speech Recognition plugin now supports a soundLevel listener that provides real-time updates on the sound level during speech recognition. This can be useful for visualizing the input volume or for implementing custom UI feedback.

import { SpeechRecognition } from '@capawesome-team/capacitor-speech-recognition';

const addListener = () => {
  SpeechRecognition.addListener('soundLevel', (event) => {
    console.log('Sound level:', event.level);
  });
};

Speech Synthesis

The Speech Synthesis plugin has been updated to include pause and resume methods. This allows you to pause and resume speech playback, providing more control over the speech synthesis experience.

import { SpeechSynthesis } from '@capawesome-team/capacitor-speech-synthesis';

const pause = async () => {
  await SpeechSynthesis.pause();
};

const resume = async () => {
  await SpeechSynthesis.resume();
};

Sqlite

The Sqlite plugin has received small bug fixes. Please check out the CHANGELOG.md for more details.