1. Core Frameworks and Runtimes
| Area | Frameworks / runtimes | Typical license family |
|---|---|---|
| Mobile and admin apps | Flutter SDK, Dart SDK, Flutter Material, Flutter localizations. | BSD-style and related open-source licenses. |
| Android phone and Wear OS | Android Gradle Plugin, Kotlin, Jetpack Compose, AndroidX Core, Activity Compose, Lifecycle, Material 3, Google Play Services Wearable. | Apache 2.0 and related open-source licenses, plus Google service terms. |
| iOS and watchOS | Apple platform SDKs, HealthKit/watch workout capabilities, Sign in with Apple. | Apple developer program terms and platform SDK terms. |
| Backend API | Python, Flask, Gunicorn, Flask-CORS, Flask-Caching, Flask-WTF, flasgger, flask-swagger-ui. | BSD, MIT, Apache 2.0, and related Python package licenses. |
| Public product website | Static HTML/CSS/JavaScript, Bootstrap 5.3.3, Bootstrap Icons 1.11.3, Google Fonts Manrope and Sora. | MIT for Bootstrap and Bootstrap Icons; Open Font License for Google fonts. |
2. Mobile App Direct Flutter Dependencies
The iOS and Android mobile app currently declares these direct Flutter/Dart packages:
app_links, audioplayers,
auto_route, cached_network_image,
collection, connectivity_plus,
crypto, dio, encrypt,
file, file_picker,
firebase_analytics, firebase_auth,
firebase_core, firebase_crashlytics,
firebase_messaging, fl_chart,
flutter_bloc, flutter_body_atlas,
flutter_secure_storage, flutter_svg,
flutter_timezone, flutter_tts,
freezed_annotation, get_it,
google_sign_in, http_mock_adapter,
injectable, intl,
json_annotation, logger,
mobile_scanner, package_info_plus,
path, path_provider,
permission_handler, qr_flutter,
record, sembast,
sentry_flutter, shared_preferences,
sprintf, syncfusion_flutter_calendar,
url_launcher, uuid,
video_player, wakelock_plus,
watch_connectivity, webview_flutter, and
webview_flutter_wkwebview.
3. Web/Admin Direct Flutter Dependencies
The Flutter web/admin app currently declares these direct packages:
intl, http, http_parser,
image_picker, video_player,
algolia_helper_flutter,
infinite_scroll_pagination, dio,
firebase_auth, firebase_core,
file_picker, google_sign_in,
sign_in_with_apple, flutter_html,
flutter_quill,
flutter_quill_delta_from_html,
dotted_border, appflowy_editor,
font_awesome_flutter, package_info_plus,
percent_indicator, flutter_tts,
buttons_tabbar, url_launcher,
youtube_player_iframe, web,
qr_flutter, fl_chart,
flutter_body_atlas,
syncfusion_flutter_calendar,
syncfusion_flutter_charts,
syncfusion_flutter_datagrid, image,
vsc_quill_delta_to_html, sentry_flutter,
and showcaseview.
4. Wear OS Direct Dependencies
The Wear OS companion declares AndroidX Core, Activity Compose, Compose Foundation, Material 3, Runtime, UI, UI tooling preview, Lifecycle Runtime Compose, Lifecycle ViewModel Compose, Lifecycle ViewModel KTX, Google Play Services Wearable, OkHttp, Gson, Coil Compose, Kotlin Coroutines Android, and JUnit for tests.
5. Backend and Notification Service Dependencies
The Flask API and notification worker currently declare:
flask_swagger_ui, Flask,
flasgger, Flask-WTF, urllib3,
sentry-sdk[flask], boto3,
sqs-client, algoliasearch,
gunicorn, firebase-admin,
flask_firebase, flask-cors,
openai, Flask-Caching,
pillow, qrcode[pil],
reportlab, pycryptodome,
python-dateutil, pytest for local tests,
and youtube-transcript-api for local content tooling.
6. Third-party Services and Commercial SDKs
| Provider | Use in BasketTrainer | Notice |
|---|---|---|
| AWS | API hosting support, DynamoDB, S3/media storage, SQS/SNS style backend infrastructure. | Subject to AWS service terms and data processing terms. |
| Firebase / Google | Authentication, push messaging, Crashlytics, Analytics, provider sign-in data. | Subject to Firebase/Google terms. Disclose analytics and diagnostics in store forms when enabled. |
| Apple | Sign in with Apple, Apple platform APIs, App Store/TestFlight, watchOS HealthKit/workout capability. | Subject to Apple developer and platform terms. |
| Stripe | Connected accounts, public plan checkout, payment status metadata. | Card details should be handled by Stripe, not stored directly by BasketTrainer. |
| Algolia | Search/index workflows for product data. | Subject to Algolia service terms and data processing terms. |
| Sentry | Error monitoring, crash diagnostics, performance context. | May receive diagnostics and limited user/app context needed to debug issues. |
| OpenAI | AI Builder, text cleanup, transcription/analysis support, InBody import assistance when configured. | Only send data needed for the selected AI feature and disclose AI processing in privacy materials. |
| Syncfusion | Flutter calendar, charts, and data grid components. | Commercial/community licensing should be tracked outside this open-source notice. |
| YouTube | Exercise video links and embeds/player surfaces selected by users or administrators. | Subject to YouTube and Google terms. Embedded content may involve third-party cookies or requests. |
7. Fonts and Media Assets
- Lato font files are bundled in the mobile app under the SIL Open Font License 1.1.
- Google Fonts Manrope and Sora are loaded on the public product page and are distributed under open font licenses.
- Mobile sound effects are credited in the app license registry:
MetronomeUp.wavandMetronome.wavby Druminfected, andBeep_05_single_2015-06-21.wavby PaulMorek, each listed as Creative Commons 0 in the bundled license files. - The mobile login image source is documented in the mobile app manifest comments as a Pexels basketball court photo. Confirm current asset use and attribution requirements before release.
8. License Families to Track
- BSD-style licenses for Flutter/Dart ecosystem components.
- MIT licenses for Bootstrap, Bootstrap Icons, and many Flutter/Dart/Python packages.
- Apache 2.0 licenses for AndroidX, Kotlin ecosystem pieces, Google open-source packages, and related libraries.
- SIL Open Font License for Lato, Manrope, Sora, and other open fonts.
- Creative Commons 0 for bundled metronome/beep sound assets listed above.
- Commercial/service terms for Firebase/Google, Apple, AWS, Stripe, Algolia, Sentry, OpenAI, Syncfusion, and YouTube.
9. Release Checklist
- Generate transitive Flutter package licenses for mobile and web/admin release builds.
- Generate Gradle dependency/license output for the Wear OS release build.
- Generate Python dependency/license output for the deployed backend environment.
- Confirm Syncfusion license status for the deployed apps.
- Confirm whether any image, video, or exercise media comes from third-party sources and add attribution where required.
- Keep App Store Connect, Google Play Data safety, and this notice in sync with each release.