---
title: Capawesome September 2025 Update
description: The Capawesome September update is here! This update includes new features and improvements for Capawesome Cloud and our Plugins.
date:
  created: 2025-10-01
  updated: 2026-07-08
authors:
  - robingenz
categories:
  - Updates
---

# Capawesome September 2025 Update

The Capawesome September update is here! This update includes new features and improvements for [Capawesome Cloud](../../cloud/index.md) and our [Plugins](../../sdks/capacitor/index.md). Let's take a look at the most important changes.

<!-- more -->

<div class="capawesome-z29o10a">
  <a href="/" target="_blank">
    <img alt="Build and deploy your Capacitor app with Capawesome Cloud" src="https://capawesome.io/assets/banners/cloud-build-and-deploy-capacitor-apps.png?t=1" />
  </a>
</div>

In case you missed it, check out the [August 2025 update](./2025-august-update.md) to catch up on what shipped last month.

## Capver

We have published a new CLI called [Capver](https://github.com/capawesome-team/capver){:target="_blank"} for managing versions in a Capacitor project across multiple platforms. The CLI helps you set, increment, and synchronize versions in your `package.json`, `capacitor.config.json`, `Info.plist` (iOS), and `build.gradle` (Android) files. This ensures that all platforms use the same version number, making it easier to manage and release your app.

First, install the CLI using npm:

```bash
npm install -g @capawesome/capver
```

After installing, you can use the following commands to manage your app versions:

```bash
# Initialize a new Capacitor project with version 0.0.1
npx @capawesome/capver set 0.0.1

# Increment the patch version
npx @capawesome/capver patch

# Increment the minor version
npx @capawesome/capver minor

# Increment the major version
npx @capawesome/capver major

# Increment only the build number
npx @capawesome/capver hotfix

# Check version consistency across platforms
npx @capawesome/capver get

# Synchronize all platforms to use the highest version found
npx @capawesome/capver sync
```

Check out the [documentation](https://github.com/capawesome-team/capver){:target="_blank"} to learn more about the CLI and its features.

## Cloud

### Audit Logs

You can now view audit logs for your Capawesome Cloud organizations. Audit logs provide a detailed record of actions taken within your organization, including deployments, configuration changes, and user activities. This feature helps you monitor and track changes to your organization for security and compliance purposes. Read more about in our [documentation](../../cloud/organizations/audit-logs.md).

![Audit Logs](../../assets/images/screenshots/cloud-app-audit-logs.png)

## Newsletter

After a long break, we have finally sent out a new [Capawesome Newsletter](/newsletter/){:target="_blank"} with some cool updates in offers exclusively for our newsletter subscribers. If you haven't subscribed yet, make sure to [sign up](/newsletter/){:target="_blank"} to stay updated with the latest news and updates from Capawesome.

## Plugins

### Audio Player

We have published a new [Capacitor Audio Player plugin](../../sdks/capacitor/audio-player.md) that allows you to play audio files on Android, iOS and Web. Here's a simple example of how to use the plugin to play an audio file:

```ts
import { AudioPlayer } from '@capawesome-team/capacitor-audio-player';
import { Capacitor } from '@capacitor/core';
import { Filesystem } from '@capacitor/filesystem';

const play = async () => {
  if (Capacitor.getPlatform() === 'web') {
    const assetUrl = 'https://www.example.com/audio.mp3';
    const response = await fetch(assetUrl);
    const blob = await response.blob();
    await AudioPlayer.play({ blob, loop: false, volume: 100, position: 0 });
  } else {
  const { uri } = await Filesystem.getUri({
    directory: FilesystemDirectory.Documents,
    path: 'audio.mp3',
  });
    await AudioPlayer.play({ uri, loop: false, volume: 100, position: 0 });
  }
};
```

Check out the [documentation](../../sdks/capacitor/audio-player.md) to learn more about the plugin and its features.

### Bluetooth Low Energy

The [Capacitor Bluetooth Low Energy plugin](../../sdks/capacitor/bluetooth-low-energy.md) received multiple improvements this month.

##### Auto Initialization

The plugin now automatically initializes itself on the first call to any of its methods. This makes it easier to use the plugin, as you no longer need to call the `initialize()` method manually.

##### Manufacturer Data

You can now include manufacturer-specific data when advertising as a peripheral. This allows you to provide additional information about your device that can be used by other Bluetooth devices. Here's an example of how to start advertising with manufacturer data:

```ts
import { BluetoothLowEnergy } from '@capawesome-team/capacitor-bluetooth-low-energy';

const startAdvertising = async () => {
  await BluetoothLowEnergy.startAdvertising({
    manufacturerData: {
      0xffff: [1, 2, 3]
    },
    name: 'MyDevice',
    services: []
  });
};
```

### Contacts

The [Capacitor Contacts plugin](../../sdks/capacitor/contacts.md) now includes a new `openSettings()` method that opens the device's settings page for the app. This is useful for prompting users to grant permissions if they have previously denied access to contacts.

```ts
import { Contacts } from '@capawesome-team/capacitor-contacts';

const openContactsSettings = async () => {
  await Contacts.openSettings();
};
```

### Live Update

The [Capacitor Live Update plugin](../../sdks/capacitor/live-update.md) has received small bug fixes. Please check out the [CHANGELOG.md](../../sdks/capacitor/live-update.md#changelog) for more details.

### Speech Recognition

The [Capacitor Speech Recognition plugin](../../sdks/capacitor/speech-recognition.md) now supports a `taskHint` option for the `startListening()` method on iOS. This option allows you to specify the type of speech recognition task you are performing, which can help improve accuracy and performance.

```ts
import { SpeechRecognition, TaskHint } from '@capawesome-team/capacitor-speech-recognition';

const startListening = async () => {
  await SpeechRecognition.startListening({
    taskHint: TaskHint.Dictation
  });
};
```

Check out the `TaskHint` enum in the [documentation](../../sdks/capacitor/speech-recognition.md#taskhint) for all available options.

### Speech Synthesis

The [Capacitor Speech Synthesis plugin](../../sdks/capacitor/speech-synthesis.md) now automatically initializes itself on the first call to any of its methods. This makes it easier to use the plugin, as you no longer need to call the `initialize()` method manually.

### Share Target

The [Capacitor Share Target plugin](../../sdks/capacitor/share-target.md) now provides the `mimeType` and `name` properties for shared files. This allows you to get more information about the files that are shared with your app.

```ts
import { Capacitor } from '@capacitor/core';
import { ShareTarget } from '@capawesome-team/capacitor-share-target';

const addListener = async () => {
  await ShareTarget.addListener('shareReceived', (event) => {
    const firstFile = event.files[0];
    console.log('File URI: ', firstFile.uri);
    console.log('File MIME type:', firstFile.mimeType);
    console.log('File name:', firstFile.name);
  });
};
```

