Contributions
Flutter Sound is a free and Open Source project. Several contributors have already contributed to Flutter Sound. Specially :
- @hyochan who is the Flutter Sound father
- @salvatore373 who wrote the Track Player
- @bsutton who wrote the UI Widgets
- @larpoux who add several codec supports
We really need your contributions. Pull Requests are welcome and will be considered very carefully.
Setup a development environment
Clone the Flutter Sound project and the flutter_sound_core module
cd some_where
git clone --recursive https://github.com/canardoux/tau.git
setup a development environment
cd to the τ root dir and run the script bin/reldev.sh DEV
cd tau
bin/reldev.sh DEV
iOS signing
Open tau/flutter_sound/example/ios/Runner.xcworkspace in XCode, and set your Team
in the Signing & Capabilities
tab.
Set your Flutter Sound flavor
cd tau
# If you want to work on the full flavor
bin/flavor.sh FULL
# if you want to work on the lite flavor
bin/flavor.sh LITE
Clean your space
Probably good to clean the space :
cd flutter_sound/example
rm -r build ios/.symlinks ios/Podfile.lock
flutter clean
flutter pub get
cd ios
pod install
cd ..
Debug the example
If everything good, you are now ready to run the example in debug mode using either Visual Studio Code, Android Studio or XCode
- To debug/develop the Dart side, you open the project /tau/flutter_sound/example/ in Visual Studio Code or Android Studio.
- To debug/develop the iOS side you open tau/flutter_sound/example/ios/Runner.xcworkspace in XCode.
- To debug/develop the Android side, you open the project tau/flutter_sound/example/android in Android Studio
Debug your own App
You must change the dependencies in your pubspec.yaml file and do a flutter pub get
:
# ============================================================================
# The following instructions are just for developing/debugging Flutter Sound
# Do not put them in a real App
flutter_sound_platform_interface:
path: ../tau/flutter_sound_platform_interface # flutter_sound_platform_interface Dir
flutter_sound_web:
path: ../tau/flutter_sound_web # flutter_sound_web Dir
flutter_sound:
path: ../tau/flutter_sound
# ============================================================================
Update the documentation
τ uses the Jekyll tool with a “Documentation Theme” to generate the documentation. Here is the Jekyll documentation. Please refer to this documentation to install ruby and jekyll on your dev machine.
All the τ documentation is in markdown files under tau/doc/pages. You can see your modifications in live doing:
cd tau/doc
jekyll serve
Then, if you have the necessary credentials (but you certainly do not have them), you can do:
cd tau
bin/doc.sh
Build a new release
if you have the necessary credentials (but you certainly do not have them), you can do:
cd tau
newVersion.sh 8.2.0
(In this example, 8.2.0 is the version number that you want to build).
When the script asks if OK to upload your new flutter_sound plugin,
it is a good idea to wait something like half an hour before answering.
This will give time to npm
and cocoaPod
to update their repositories (you do not want that someone will use your new build before that the repositories are updated.
When you have finished your contribution, you commit and push your files, and do a Pull Request in the Github τ Project.
THANK YOU FOR YOUR CONTRIBUTION