For more information, please refer to the documentation for each package.
Contributing
If you're interested in contributing, please join us on
Discord.
Environment setup
Working on Shorebird requires Dart.
./scripts/bootstrap.sh will run pub get all packages in the repository.
Running tests
We don't yet have a script to run tests locally. For now, we recommend using
very_good test -r in the packages directory to run all shorebird tests.
(If you run it in the root, it will find packages in bin/cache/flutter and try
to run tests there, some of which will fail.)
To generate a coverage report install lcov:
brew install lcov
Then run tests with the --coverage flag:
very_good test -r --coverage
genhtml coverage/lcov.info -o coverage
You can view the generated coverage report via:
open coverage/index.html
Tracking coverage
The following command will generate a coverage report for the Dart packages:
dart test --coverage=coverage && dart pub global run coverage:format_coverage --lcov --in=coverage --out=coverage/lcov.info --packages=.dart_tool/package_config.json --check-ignore
Shorebird projects are licensed for use under either Apache License, Version 2.0
(LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) MIT license
(LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
See our license philosophy for more information on why we license files this
way:
https://handbook.shorebird.dev/engineering/#licensing-philosophy