docs: one repository for every app and shared package (ADR 0015)

The root AGENTS.md holds what applies to every app and package (how
work is done, Serverpod, checks with Melos and the tools, CI); Learn's
own is apps/learn/AGENTS.md, Todo's a note that it is still the
scaffold. The root README introduces the project, Learn's moves to its
folder; LICENSE.md says which licence covers which directory, Todo's
packages unlicensed until decided; one CONTRIBUTING.md. ADR 0015
records the decision; ADR 0014 and 0003 note what moved.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-10-19 20:39:09 +02:00
commit 1b62c8098c
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -42,29 +42,15 @@ What belongs to one app stays in it: its own colours (an extension passed to
## Using it in an app
Depend on it by git, pinned to a signed commit, as the apps pin their forks:
Depend on it by path, within the repository's workspace (an app's packages sit in
`apps/<app>/`), so a change to the package and to the apps using it is one commit:
```yaml
dependencies:
halkyon_ui:
git:
url: https://code.halkyon.app/project-halkyon/halkyon_shared.git
path: packages/halkyon_ui
ref: <signed commit>
path: ../../../packages/halkyon_ui
```
While changing both at once, point the app at a local checkout with a
git-ignored `pubspec_overrides.yaml` beside the app's workspace root:
```yaml
dependency_overrides:
halkyon_ui:
path: ../halkyon_shared/packages/halkyon_ui
```
The lockfile then records the path: never commit it so, as CI has no such
folder.
Then set the app up as `example/lib/main.dart` does:
```dart
@ -95,7 +81,7 @@ fallback); `halkyon_ui_de.arb` German, informal "du"; `halkyon_ui_en_US.arb`
only what American English spells differently; `halkyon_ui_en_GB.arb` empty. A
new text goes into the template and German together (`test/l10n/` fails
otherwise). `flutter pub get` writes `lib/l10n/halkyon_ui_localizations*.dart`,
which are committed (apps take the package by git) and never edited or
which are committed and never edited or
formatted by hand.
## Checks