- Dart 93.4%
- PLpgSQL 6.3%
- Python 0.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
What every Halkyon app's shell needs, taken from Halkyon Learn's and set on halkyon_base's client: the instances a device keeps an account on, the first start's tiles and where an instance keeps people's data, the account switcher; signing in anonymously, with GitHub or an email code, switching person and the start screen; the gates that build an app's dependencies per instance and per person; and the sync service with its status, Settings card and banner. Texts of its own in English and German take the app's name; what only the app can say, it passes in. Fakes for apps' tests are in testing.dart. An instance's basics now name the app it serves (`app`, set by the host's configuration), and an app accepts only an instance of its own. SerialQueue and CoalescingRunner move into halkyon_core. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me> |
||
| packages | ||
| .gitignore | ||
| analysis_options.yaml | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| pubspec.yaml | ||
| README.md | ||
| SECURITY.md | ||
halkyon_shared
Shared Dart packages across Halkyon apps, a pub workspace:
halkyon_ui: Halkyon's look, the theme, fonts, layout and shared widgets (Flutter).halkyon_app: what every app is built around, on an instance'shalkyon_base: the instances a device keeps accounts on, signing in, each person's data opened and closed, and syncing it (Flutter).halkyon_base: what every Halkyon server has, as a Serverpod module (halkyon_base_serverand its generated clienthalkyon_base_client): signing in, the account and its deletion, the pruning, and the instance's basics.halkyon_core: low-level primitives (pure Dart),SerialQueueandCoalescingRunneramong them.halkyon_interop: cross-app contracts (pure Dart).
Dart 3.13 and Flutter 3.47, with LeanCode's lints (leancode_lint), configured
once in analysis_options.yaml here, which every package includes but the
generated halkyon_base_client: its analyzer plugin only reaches packages of a
workspace from the root. Run
flutter pub get and dart analyze --fatal-infos here, and each package's
tests in its folder (dart test, or flutter test for halkyon_ui, its
example and halkyon_app). halkyon_base_server's tests start Serverpod's embedded PostgreSQL by
themselves and need a git-ignored config/passwords.yaml (see its README).
Licences: the server package halkyon_base_server is under the Server Side
Public License 1.0, as the Halkyon servers are; every other package under the
GNU Affero General Public License 3.0 or later.
Apps take a package by git, pinned to a signed commit; see
halkyon_ui's README.