Search packages, repositories and app categories

siri_wave cover
Package detailsv2.3.1

siri_wave

A Flutter package that lets you create visually stunning Siri-style waveforms.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
5.5K
Likes
160
Pub points
150

Install package

flutter pub add siri_wave

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Siri Wave is a Flutter package that enables developers to create visually appealing, Siri-style animated waveforms. Inspired by Apple's Siri voice animation, it offers smooth, customizable audio visualization with real-time waveform rendering across multiple platforms. The package supports various wave types, colors, and animation speeds, making it ideal for voice assistants, music apps, or any app requiring dynamic audio feedback. It integrates seamlessly into Flutter projects with minimal setup and works on Android, iOS, Web, macOS, Windows, and Linux.

Use cases

  • Voice assistant interfaces
  • Music player visualizers
  • Real-time audio feedback
  • Interactive app animations
  • Live speech recognition displays

Key features

  • Siri-style waveform design
  • Customizable wave colors and shapes
  • Smooth real-time animations
  • Cross-platform compatibility
  • Simple integration with Flutter
  • Support for multiple audio sources

Suitable for

  • Audio visualization in mobile apps
  • Voice-enabled applications
  • Design-focused UI components
  • Flutter developers seeking animated effects
  • Apps requiring real-time audio indicators

Considerations

  • Performance may vary with high-frequency updates
  • Limited customization beyond basic wave properties
  • Best suited for simple, smooth animations
  • Requires proper handling of audio data streams
  • Not optimized for complex audio processing

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

ci Package: siri_wave Publisher: halildurmus.dev Language: Dart Platform: Flutter License: BSD-3-Clause

Create visually stunning waveforms similar to those found in Siri.

Inspired from the siriwave library.

Demo

Check out the live demo here.

iOS 7 Siri-style waveform GIF

iOS 7 Siri-style waveform

iOS 9 Siri-style waveform GIF

iOS 9 Siri-style waveform

Usage

iOS 7 Siri-style waveform

To create an iOS 7 Siri-style waveform, use the SiriWaveform.ios7() constructor:

import 'package:siri_wave/siri_wave.dart';

class MyWidget extends StatelessWidget {
  MyWidget({super.key});

  Widget build(BuildContext context) => SiriWaveform.ios7();
}

You can customize the waveform by passing a controller and/or options:

class MyWidget extends StatelessWidget {
  MyWidget({super.key});

  final controller = IOS7SiriWaveformController(
    amplitude: 0.5,
    color: Colors.red,
    frequency: 4,
    speed: 0.15,
  );

  @override
  Widget build(BuildContext context) => SiriWaveform.ios7(
        controller: controller,
        options: const IOS7SiriWaveformOptions(height: 200, width: 400),
      );
}

You can also change the properties of the waveform later:

  controller.amplitude = 0.3;
  controller.color = Colors.white;
iOS 9 Siri-style waveform

To create an iOS 9 Siri-style waveform, use the SiriWaveform.ios9() constructor:

import 'package:siri_wave/siri_wave.dart';

class MyWidget extends StatelessWidget {
  MyWidget({super.key});

  Widget build(BuildContext context) => SiriWaveform.ios9();
}

As with the iOS 7 Siri-style waveform, you can customize the waveform by passing a controller and/or options:

class MyWidget extends StatelessWidget {
  MyWidget({super.key});

  final controller = IOS9SiriWaveformController(
    amplitude: 0.5,
    color1: Colors.red,
    color2: Colors.green,
    color3: Colors.blue,
    speed: 0.15,
  );

  @override
  Widget build(BuildContext context) => SiriWaveform.ios9(
        controller: controller,
        options: const IOS9SiriWaveformOptions(height: 200, width: 400),
      );
}

For a complete sample application, please checkout the example.

To learn more, see the API Documentation.

🤝 Contributing

Contributions, issues and feature requests are welcome. Feel free to check the issue tracker if you want to contribute.

Categories

Source repository

Projects using this package

No data available yet.