Reusable GitHub Actions for Flutter / Dart repos.
Goals: free Actions tier · solo/small team · build once · ci.yaml over copy-paste.
Covers: apps · Melos monorepos · packages · CLI · web · Android · iOS · macOS · Windows · Linux · Firebase · Pages · multi-demo Pages · pub.dev.
- Copy
templates/ci.yaml→ci.yaml(defaults = quality only). - Copy
templates/consumer-ci.yml→.github/workflows/ci.yml. - Pin
roshandroids/platform-ci@v1. - Opt in builds/deploy/release only when needed — see
docs/OPT_IN.mdanddocs/RELEASE.md.
Nothing outside quality.format/analyze/test runs unless you enable it and add the matching thin workflow.
Optional callers: consumer-ci-with-build.yml · deploy-firebase · release · deploy-demos.
Local: ./scripts/validate-local.sh ci.yaml
| Workflow | Purpose |
|---|---|
quality.yml |
format · analyze · test · optional golden/integration/scripts |
build.yml |
all targets · optional Node · before_build · zip · custom script |
release.yml |
GitHub Release from artifacts |
deploy-firebase.yml |
Hosting from web artifact |
deploy-pages.yml |
Pages from single artifact |
deploy-web-demos.yml |
Multi-demo site from demos.json |
publish-pub.yml |
pub.dev |
maintenance.yml |
weekly hygiene |
See docs/COMPATIBILITY.md for Document_Platform, AI_Tray, agentic_flutter_template, celpip.
@v1 floating · @v1.x.y immutable · breaking → v2
See CONTRIBUTING.md. Conduct: CODE_OF_CONDUCT.md. Security: SECURITY.md.
MIT © Roshan Shrestha