siri_wave 2.3.0 copy "siri_wave: ^2.3.0" to clipboard
siri_wave: ^2.3.0 copied to clipboard

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

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. It was 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();
}
copied to clipboard

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),
      );
}
copied to clipboard

You can also change the properties of the waveform later:

  controller.amplitude = 0.3;
  controller.color = Colors.white;
copied to clipboard

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();
}
copied to clipboard

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),
      );
}
copied to clipboard

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.

128
likes
160
points
3.16k
downloads
screenshot

Publisher

verified publisherhalildurmus.dev

Weekly Downloads

2024.09.08 - 2025.03.23

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

Repository (GitHub)
View/report issues
Contributing

Topics

#wave #waveform #siri

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter

More

Packages that depend on siri_wave