224 lines
9 KiB
YAML
224 lines
9 KiB
YAML
name: halkyon_learn_flutter
|
|
description: A new Flutter project with Serverpod.
|
|
|
|
# The following line prevents the package from being accidentally published to
|
|
# pub.dev using `pub publish`. This is preferred for private packages.
|
|
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
|
|
|
# The following defines the version and build number for your application.
|
|
# A version number is three numbers separated by dots, like 1.2.43
|
|
# followed by an optional build number separated by a +.
|
|
# Both the version and the builder number may be overridden in flutter
|
|
# build by specifying --build-name and --build-number, respectively.
|
|
# In Android, build-name is used as versionName while build-number used as versionCode.
|
|
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
|
|
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
|
|
# Read more about iOS versioning at
|
|
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
|
|
version: 0.16.0+19
|
|
|
|
environment:
|
|
sdk: '^3.13.0'
|
|
flutter: '^3.44.4'
|
|
|
|
resolution: workspace
|
|
|
|
dependencies:
|
|
# Our fork of the editor's main branch, moved to win32 v6 so the app can stay in the pub
|
|
# workspace, pinned to a signed commit of its branch halkyon/win32-v6.
|
|
appflowy_editor:
|
|
git:
|
|
url: https://code.halkyon.app/project-halkyon/appflowy-editor.git
|
|
ref: 81c3006c74e789ed2e470b8612529541b358fd26
|
|
# Anki packages are zip files.
|
|
archive: ^4.0.7
|
|
# Sounds in content (pronunciations): one package for all five platforms; on
|
|
# Linux it plays through GStreamer, whose development files a Linux build needs.
|
|
audioplayers: ^6.8.1
|
|
clock: ^1.1.3
|
|
crypto: ^3.0.7
|
|
# The following adds the Cupertino Icons font to your application.
|
|
# Use with the CupertinoIcons class for iOS style icons.
|
|
cupertino_icons: ^1.0.5
|
|
# The Pomodoro timer on Linux talks to the desktop's notification server over
|
|
# the session bus; the version the network packages bring along already.
|
|
dbus: ^0.7.15
|
|
equatable: ^3.0.0
|
|
expressive_loading_indicator: ^0.0.1
|
|
# Saves exports on Android and iOS, where file_selector has no save dialog
|
|
# (the system's through it: Android's Storage Access Framework); the editor
|
|
# brings this version along already.
|
|
file_picker: ^13.1.0
|
|
# Picks the files to import (and later the images to add), and saves exports
|
|
# on the desktop: flutter.dev's own.
|
|
file_selector: ^1.1.0
|
|
flutter:
|
|
sdk: flutter
|
|
flutter_bloc: ^9.1.1
|
|
flutter_localizations:
|
|
sdk: flutter
|
|
# The app's own browser half of GitHub sign-in on Linux and Windows
|
|
# (LoopbackWebAuth) plugs in here, and opens the browser and brings the window
|
|
# back with the same packages flutter_web_auth_2 uses.
|
|
flutter_math_fork: ^0.7.4
|
|
# Keeps the token of a Jellyfin server in the system's keyring; Serverpod's
|
|
# sign-in keeps its session there with it already.
|
|
flutter_secure_storage: ^10.0.0
|
|
flutter_web_auth_2_platform_interface: ^5.0.0
|
|
fractional_indexing_dart: ^1.0.7
|
|
# Pinned exactly: every device on one app version must compute the same
|
|
# schedules.
|
|
fsrs: 2.0.1
|
|
go_router: ^18.0.2
|
|
halkyon_learn_client:
|
|
path: ../halkyon_learn_client
|
|
# Anki's fields are HTML; the editor brings this parser along already.
|
|
html: ^0.15.6
|
|
# Talks to Jellyfin servers; Serverpod's client brings it along already.
|
|
http: ^1.6.0
|
|
intl: ^0.20.3
|
|
lucide_icons_flutter: ^3.1.20
|
|
material_ui: ^1.5.0
|
|
# Videos from a Jellyfin server on Linux and Windows, where video_player has
|
|
# no player: libmpv (MIT; libmpv LGPL), the system's on Linux (a Linux build
|
|
# needs libmpv-dev), bundled on Windows. Used directly rather than behind
|
|
# video_player, which can't keep libmpv from drawing the video's own
|
|
# subtitles. Not fvp, whose libmdk is closed.
|
|
media_kit: ^1.2.6
|
|
media_kit_libs_linux: ^1.2.1
|
|
media_kit_libs_windows_video: ^1.0.11
|
|
media_kit_video: ^2.0.1
|
|
package_info_plus: ^10.2.2
|
|
path: ^1.9.1
|
|
# SVG path data, for the strokes KanjiVG draws characters with.
|
|
path_parsing: ^1.1.0
|
|
path_provider: ^2.1.6
|
|
# Modern Anki packages are zstd-compressed, every frame without its content
|
|
# size, which upstream's v1.0.0 refuses. Our fork decodes them, pinned to a
|
|
# signed commit of its branch halkyon/unknown-content-size; back to upstream
|
|
# once it decodes them too.
|
|
pdfrx: ^2.6.5
|
|
pure_zstd:
|
|
git:
|
|
url: https://code.halkyon.app/project-halkyon/pure-zstd.git
|
|
ref: 596b63d5741d479073fbfc78377cc7dbdd342da3
|
|
serverpod_auth_idp_flutter: 4.0.4
|
|
serverpod_flutter: 4.0.4
|
|
serverpod_offline_sync_client: 0.0.10
|
|
# Anki collections are SQLite databases (the sync engine already bundles it).
|
|
sqlite3: ^3.6.0
|
|
url_launcher: ^6.3.2
|
|
# Videos from a Jellyfin server elsewhere: flutter.dev's player (ExoPlayer on
|
|
# Android, AVPlayer on iOS and macOS).
|
|
video_player: ^2.14.1
|
|
window_to_front: ^0.0.4
|
|
youtube_player_iframe: ^6.0.2
|
|
|
|
dev_dependencies:
|
|
fake_async: ^1.3.3
|
|
# Used for agents to drive the app through the Dart MCP
|
|
flutter_driver:
|
|
sdk: flutter
|
|
# Writes the app's icons for every platform from assets/icon/halkyon_icon.png, run
|
|
# through tool/app_icons.py (see the flutter_launcher_icons section below).
|
|
flutter_launcher_icons: ^0.14.4
|
|
flutter_test:
|
|
sdk: flutter
|
|
# A test drives sign-in through its front, as Serverpod's GitHub sign-in does.
|
|
flutter_web_auth_2: ^5.1.0
|
|
# Checks on a device what no widget test can see (integration_test/).
|
|
integration_test:
|
|
sdk: flutter
|
|
# The sync tests (test/sync/) sign in like the app and read the server's database.
|
|
postgres: ^3.5.16
|
|
serverpod_auth_core_client: 4.0.4
|
|
yaml: ^3.1.4
|
|
|
|
dependency_overrides:
|
|
flutter_secure_storage: ^10.0.0
|
|
|
|
# For information on the generic Dart part of this file, see the
|
|
# following page: https://dart.dev/tools/pub/pubspec
|
|
|
|
# The following section is specific to Flutter.
|
|
flutter:
|
|
# Generates AppLocalizations from lib/l10n (see l10n.yaml).
|
|
generate: true
|
|
|
|
# The following line ensures that the Material Icons font is
|
|
# included with your application, so that you can use the icons in
|
|
# the material Icons class.
|
|
uses-material-design: true
|
|
|
|
# To add assets to your application, add an assets section, like this:
|
|
# assets:
|
|
# - images/a_dot_burr.jpeg
|
|
# - images/a_dot_ham.jpeg
|
|
|
|
# An image asset can refer to one or more resolution-specific "variants", see
|
|
# https://flutter.dev/assets-and-images/#resolution-aware.
|
|
|
|
# For details regarding adding assets from package dependencies, see
|
|
# https://flutter.dev/assets-and-images/#from-packages
|
|
assets:
|
|
- assets/config.json
|
|
# The kingfisher: the app icon, also shown atop the navigation rail.
|
|
- assets/icon/halkyon_icon.png
|
|
# Region maps for map questions (see assets/maps/ATTRIBUTION.md).
|
|
- assets/maps/japan_prefectures.geojson
|
|
- assets/maps/world_countries.geojson
|
|
- assets/maps/LICENSE-CLDR.txt
|
|
# The bundled fonts' licences, for the licence list (see assets/fonts/ATTRIBUTION.md).
|
|
- assets/fonts/OFL-NotoSans.txt
|
|
- assets/fonts/OFL-NotoSansCJK.txt
|
|
# How kanji and kana are written, from KanjiVG (see assets/kanjivg/ATTRIBUTION.md).
|
|
- assets/kanjivg/
|
|
# How Chinese characters are written, from Make Me a Hanzi (see
|
|
# assets/makemeahanzi/ATTRIBUTION.md), and the Hangul letters.
|
|
- assets/makemeahanzi/
|
|
- assets/hangul/
|
|
|
|
# The app's own fonts, the same on every device and never fetched: Noto Sans for
|
|
# Latin, Greek and Cyrillic; behind it Noto Sans JP, SC, TC and KR for Japanese,
|
|
# Chinese and Korean, in the order a studyset's language asks for
|
|
# (core/theme/app_fonts.dart). Each file holds every weight (variable fonts).
|
|
fonts:
|
|
- family: Noto Sans
|
|
fonts:
|
|
- asset: assets/fonts/NotoSans-Variable.ttf
|
|
- asset: assets/fonts/NotoSans-Italic-Variable.ttf
|
|
style: italic
|
|
- family: Noto Sans JP
|
|
fonts:
|
|
- asset: assets/fonts/NotoSansJP-Variable.otf
|
|
- family: Noto Sans SC
|
|
fonts:
|
|
- asset: assets/fonts/NotoSansSC-Variable.otf
|
|
- family: Noto Sans TC
|
|
fonts:
|
|
- asset: assets/fonts/NotoSansTC-Variable.otf
|
|
- family: Noto Sans KR
|
|
fonts:
|
|
- asset: assets/fonts/NotoSansKR-Variable.otf
|
|
|
|
# The app's icons, written by tool/app_icons.py: it prepares the images derived from
|
|
# the kingfisher in build/icons/ first, then runs `dart run flutter_launcher_icons`
|
|
# with this. Android: an adaptive icon, the kingfisher inset on white for each
|
|
# launcher to cut to its shape, and the square one older Androids show. iOS: without
|
|
# transparency, as Apple requires. macOS: the rounded tile on Apple's grid. Windows:
|
|
# the rounded tile (tool/app_icons.py then writes its .ico with every size).
|
|
flutter_launcher_icons:
|
|
image_path: "assets/icon/halkyon_icon.png"
|
|
android: true
|
|
adaptive_icon_background: "#ffffff"
|
|
adaptive_icon_foreground: "assets/icon/halkyon_icon.png"
|
|
ios: true
|
|
remove_alpha_ios: true
|
|
background_color_ios: "#ffffff"
|
|
macos:
|
|
generate: true
|
|
image_path: "build/icons/macos.png"
|
|
windows:
|
|
generate: true
|
|
image_path: "build/icons/rounded.png"
|
|
icon_size: 256
|