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

@ -1,10 +1,12 @@
# Contributing to Halkyon Learn
# Contributing to Halkyon
## Licences
Contributions are accepted under the licence of the package they change (see
`LICENSE.md`): `AGPL-3.0-or-later` for the app and the client, `SSPL-1.0` for the
server. There is no copyright assignment and no contributor licence agreement: every
`LICENSE.md`): `AGPL-3.0-or-later` for the apps, the client packages and the shared
Flutter and Dart packages, `SSPL-1.0` for the servers and the server module. Halkyon
Todo's packages have no licence yet; contributions to them wait until they have one.
There is no copyright assignment and no contributor licence agreement: every
contributor keeps the copyright of their work.
## Sign-off
@ -12,14 +14,15 @@ contributor keeps the copyright of their work.
Every commit carries a `Signed-off-by` line with your name and email address. With it
you certify the Developer Certificate of Origin below: that you wrote the change, or
otherwise have the right to submit it under the package's licence. `git commit -s` adds
the line.
the line, or `git config format.signoff true` for every commit.
## Before you push
`tool/check.sh` runs the format check, the analyzer and every test that doesn't need a
running server. In a fresh clone, `ln -s ../../tool/check.sh .git/hooks/pre-push` makes
every push run it. How the code is organised, and the rules it follows, are in
`AGENTS.md`.
`dart run tool/check.dart` runs the format check, the analyzer and every package's tests
that don't need a running server. In a fresh clone,
`ln -s ../../tool/pre-push .git/hooks/pre-push` makes every push run it. Keep a change
focused, with its tests. How the code is organised, and the rules it follows, are in
`AGENTS.md` and each app's own `AGENTS.md`.
## Developer Certificate of Origin