Cross-platform worship music chord display app starter.
apps/worship_app: Flutter client (mobile, desktop, web)backend/supabase/schema.sql: Postgres schema + RLS scaffoldingbackend/firebase/firestore.rules: Firestore security rule starterdocs/sync-protocol.md: Offline-first and cross-device sync protocoldocs/implementation-plan.md: Build plan and feature mapping
- Install Flutter stable channel.
- From
apps/worship_apprunflutter pub get. - Run with
flutter runon your preferred target.
Optional Firebase setup:
- Add Firebase app configuration for each target platform.
- Run
flutterfire configurefromapps/worship_appto generate app bindings. - Ensure platform config files are present (
google-services.json,GoogleService-Info.plist, etc.).
This repository contains a production-oriented starter architecture with:
- Song and setlist models
- Chord transposition engine
- Local-first persistent storage via Drift/SQLite
- Persistent sync queue and Firebase sync API plumbing
- Initial UI screens for song and setlist workflows
- Firebase-ready cloud sync integration path
From apps/worship_app:
flutter testflutter analyze
Integration test scaffold:
integration_test/offline_sync_smoke_test.dart
Detailed quality gates and manual test scenarios:
docs/testing-strategy.md
CI workflow:
.github/workflows/flutter-ci.yml.github/workflows/firebase-hosting.yml
Deployment status:
- PR preview deployment and
mainlive deployment are configured through GitHub Actions + Firebase Hosting.
Firebase Hosting deployment guide:
docs/firebase-hosting-github-actions.md
Release checklist:
docs/release-checklist.md
Integrations for SongSelect/CCLI and Ultimate Guitar must follow provider licensing and terms. The backend schema and docs are prepared for compliant connector implementations.