Not a first issue, but a genuinely useful one.
A cloud build reads its Firebase settings from cloud/src/main/assets/google-services.json, bundled at build time (FirebaseBootstrap). So using the cloud flavor means compiling the apps yourself — about 45 minutes with Android Studio, per docs/SELF_HOSTING.md. That's a real barrier for a parent who wants remote limits but has never opened an IDE.
Note this is no longer blocking distribution. Local builds are published and need no configuration at all; this is about making the cloud half reachable without a compiler.
What it would take
- Build
FirebaseOptions from values a person supplies at first launch rather than from a bundled asset. FirebaseBootstrap already constructs options by hand, so the mechanism exists — what's missing is where the values come from.
- A first-launch screen in the parent app to supply a project. Importing the
google-services.json file is friendlier than typing four fields, and it's what the Firebase console hands you.
- A way for the kid app to get the same config. It needs it before it can read a pairing code, so it can't arrive over the wire afterwards. The neat answer is a QR code on the parent's pairing screen carrying both the config and the pairing code — the local build already does exactly this shape of thing for its nearby link (
NearbyLink.toPayload), so there's a working pattern to copy.
- A clear failure when someone supplies a project whose Firestore rules or auth providers aren't set up, rather than a crash or a silent hang.
Worth agreeing first
Whether a family should be able to change projects later, and what happens to a paired phone if they do. Please comment before building.
This wouldn't remove the need for docs/SELF_HOSTING.md — someone still has to create the Firebase project and publish the rules. It removes the need for every family to compile the app, which is the part that loses people.
Not a first issue, but a genuinely useful one.
A cloud build reads its Firebase settings from
cloud/src/main/assets/google-services.json, bundled at build time (FirebaseBootstrap). So using the cloud flavor means compiling the apps yourself — about 45 minutes with Android Studio, perdocs/SELF_HOSTING.md. That's a real barrier for a parent who wants remote limits but has never opened an IDE.Note this is no longer blocking distribution. Local builds are published and need no configuration at all; this is about making the cloud half reachable without a compiler.
What it would take
FirebaseOptionsfrom values a person supplies at first launch rather than from a bundled asset.FirebaseBootstrapalready constructs options by hand, so the mechanism exists — what's missing is where the values come from.google-services.jsonfile is friendlier than typing four fields, and it's what the Firebase console hands you.NearbyLink.toPayload), so there's a working pattern to copy.Worth agreeing first
Whether a family should be able to change projects later, and what happens to a paired phone if they do. Please comment before building.
This wouldn't remove the need for
docs/SELF_HOSTING.md— someone still has to create the Firebase project and publish the rules. It removes the need for every family to compile the app, which is the part that loses people.