I have an app that creates little prompts for parents and kids, currently tailored for one parent. I’m getting feedback from my users that they wanna be able to login as a family instead (like netflix, where they can add both parents).
I’m still thinking about the actual jobs to be done here but I’m wondering how you’d go about letting 2 users share the same instance of glide app data and experience? Would you still require them to login as individuals and then you’d somehow link them on the google sheet side?
I would create another sheet for families and on the user profile sheet, I will have a new column called “belong to which family” for each user
During onboarding, a user could select his own family from a choice component if their family already exists/create a new family in the family sheet using a form. This would add the family name in the choice component. That way every subsequent member of the same family could select their existing family name.
Now all the visibilities inside the app could be configured on basis of the family column so each person belonging to the same family views the same things and users can always add new users to the same family.
I am looking at the same issue with an app I am currently building. I am considering the option that the first account has the option of emailing an invite to other family members with a unique family ID that can be pasted into the app to link the accounts via a family table.
I am also creating a separate child table so the adults can add them into the family group as they will not have their own sign ins.
This is the next item on my to do list, I am thinking it will open up a can of worms.
what would the unique identifier for each family be though? if it’s name, i’m thinking that’ll require some real time validation to make sure it’s not already taken
I’ve been working on something similar, but with vehicles and owners.
A user can add new vehicles to their account and the vehicle is written to the sheet with the owner’s row id in an owners column. Using the row id in the user sheet, I can create a relation to the vehicle sheet easily. When a user is viewing their list of vehicles, I added the vehicle row id on the screen as well as a qr code of the vehicle row id (for when we get barcode scanning).
Whenever a user wants to share one of their vehicles with another user, they can share that row id with them. Then the second user can enter the vehicle row id into a temporary field on the screen and it will instantly validate the row id. If valid, they can press a button and then a set column action takes over.
Ultimately, my vehicle sheet has a column that holds the owner id, but this column can hold multiple values in a pipe delimited format. A split text column splits those owner id’s on the pipe delimiter to give me an array of owner id’s that I can use for the relation from owners to vehicles.
To build that list of owners, when a user enters the shared vehicle id, I then have a relation to link the entered id to the matching vehicle id in the vehicle sheet. Then I have a lookup column to pull back the owners list for that vehicle. Then I create a template column that joins the existing owners list and the new owner id from the currently signed in user. When the user clicks on the button, the template column overwrites the owners column via a set column action through the relation. Now the vehicle has two owners and both owners can view and work with that vehicle.
I just did all of this yesterday, so I haven’t worked through the process of removing an owner yet, but hopefully this gives you some ideas.
Using Jeff’s idea above, I assume if the initial choice has to be through a choice component, then you can show the ID alongside the family name in a template column.
Another way is to let the initial user share the ID and then new users type it in a user-specific column for validation, then submit it.
I was thinking the same thing. What about using the idea of invite codes instead? Similar to Jeff’s idea, but making the “invite code” shorter.
I’m working on an app now with the same issue of adding people to different groups. I used a GSheet formula with the LEFT function to shorten the RowID then add the number of the row to ensure it’s unique. Not sure if there’s a Glide MATH function equivalent.
Here’s a couple screenshots of what my screens look like so far. Once the barcode scanner is released, then I’ll be able to easily scan a barcode instead of typing in the code.
I’m thinking of a simpler way that doesn’t require creating a Families sheet. In the users sheet, I’m thinking of adding a partner_emaip sheet where I can add the email of a person’s partner, so that on each screen, I can filter by email == signed in user OR email == partner_email and have one copy of the data that is shared between two users. May need some relation columns that’ll mirror first parent’s data on their partner at runtime
I’m in no rush to wait for the scanner. It’s more of a personal project to be used for myself and a few others. I may expand it to others in the future, but for now, I think I’m limited due to proper data security. I had to remove Row Owners on some sheets to make this work how I wanted.
No, a scanner wouldn’t limit security. It’s just that in my particular case I had to remove row owners because I wanted to add an owner to a row, but they need access to that row in the first place before they can be given access. It’s just something unique to my special case. I just mentioned security because I’m not in a rush to find workarounds for a scanner because with the way my app is set up, I feel it’s not secure enough to share with a widespread group of people.