feat(train): Halkyon Train's shell, Todo's copied and renamed (ADR 0030, D12)
apps/train with halkyon_train_server, _client and _flutter, as Todo's: halkyon_base configured by trainBase(), its own register alone and a member of the instance's where the operator names one, the app on halkyon_app's gates with Train's frame, account sheet and About, texts in British English and German that speak of workouts, app.halkyon.train on Android, iOS, Linux, macOS and Windows. Where it differs from Todo: development ports of its own (8180 to 8190), so it runs beside Learn's server; one initial migration with the schema Todo's migrations end at (the same tables, compared line by line), not Todo's seventeen; and Todo's icon as a placeholder until the icon tool of ADR 0031 draws Train's bike. The workspace, the licences, the READMEs and AGENTS.md name it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
2fd39352fc
commit
7b5fbee913
1 changed files with 22363 additions and 7 deletions
89
apps/train/halkyon_train_flutter/pubspec.yaml
Normal file
89
apps/train/halkyon_train_flutter/pubspec.yaml
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
name: halkyon_train_flutter
|
||||
description: Halkyon Train, the app.
|
||||
publish_to: none
|
||||
|
||||
# <version>+<build>: the build rises with every release, and the instance asks apps below
|
||||
# its minimum build to update (halkyon_base's instance basics).
|
||||
version: 0.1.0+1
|
||||
|
||||
environment:
|
||||
sdk: '^3.13.0'
|
||||
flutter: '^3.44.4'
|
||||
|
||||
resolution: workspace
|
||||
|
||||
dependencies:
|
||||
flutter:
|
||||
sdk: flutter
|
||||
flutter_bloc: ^9.1.1
|
||||
# What every Halkyon app is built around (a shared package): the instances a
|
||||
# device keeps accounts on, signing in through halkyon_base, each person's
|
||||
# dependencies opened and closed, with texts of its own.
|
||||
halkyon_app:
|
||||
path: ../../../packages/halkyon_app
|
||||
# The device's half of signing in with OpenID Connect (ADR 0023): the
|
||||
# browser that SimpleLogin's sign-in opens, and on Linux and Windows the
|
||||
# loopback it comes back to, which the app builds with its name.
|
||||
halkyon_oidc_flutter:
|
||||
path: ../../../packages/halkyon_oidc_flutter
|
||||
halkyon_train_client:
|
||||
path: ../halkyon_train_client
|
||||
# Halkyon's look, shared by its apps (a shared package): the theme, the bundled
|
||||
# Noto Sans and the widgets every screen is built of.
|
||||
halkyon_ui:
|
||||
path: ../../../packages/halkyon_ui
|
||||
# gen-l10n's output imports it.
|
||||
intl: ^0.20.3
|
||||
lucide_icons_flutter: ^3.1.20
|
||||
material_ui: ^1.5.0
|
||||
path: ^1.9.1
|
||||
path_provider: ^2.1.6
|
||||
serverpod_auth_idp_flutter: 4.0.4
|
||||
serverpod_flutter: 4.0.4
|
||||
|
||||
dev_dependencies:
|
||||
flutter_driver:
|
||||
sdk: flutter
|
||||
# Writes the app's icons for every platform from assets/icon/halkyon_train_icon.png,
|
||||
# run through the icon tool ADR 0031 asks for (see the section below).
|
||||
flutter_launcher_icons: ^0.14.4
|
||||
flutter_test:
|
||||
sdk: flutter
|
||||
|
||||
flutter:
|
||||
# Generates AppLocalizations from lib/l10n (see l10n.yaml).
|
||||
generate: true
|
||||
# Material's icon font, which serverpod_auth_idp_flutter's widgets ask for
|
||||
# (it sets this itself): without it every build and test run warns, and
|
||||
# Material's icons would draw as boxes.
|
||||
uses-material-design: true
|
||||
|
||||
assets:
|
||||
# The instance the build names, unless --dart-define=SERVER_URL=… does
|
||||
# (serverpod_flutter's getServerUrl).
|
||||
- assets/config.json
|
||||
# The app's icon (Todo's until Train's is drawn, ADR 0031) and Lucide's
|
||||
# licence for the licence list.
|
||||
- assets/icon/halkyon_train_icon.png
|
||||
- assets/icon/LICENSE-lucide.txt
|
||||
|
||||
# The app's icons, to be written by the icon tool ADR 0031 asks for: it prepares the
|
||||
# rounded images in build/icons/ first, then runs `dart run flutter_launcher_icons`, as Learn's does.
|
||||
# Android: the adaptive icon, on white, for the launcher to cut to its shape, and the
|
||||
# square one older Androids show. iOS: without its alpha channel, on white. macOS and
|
||||
# Windows: the rounded tile.
|
||||
flutter_launcher_icons:
|
||||
image_path: "assets/icon/halkyon_train_icon.png"
|
||||
android: true
|
||||
adaptive_icon_background: "#ffffff"
|
||||
adaptive_icon_foreground: "assets/icon/halkyon_train_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
|
||||
Loading…
Reference in a new issue