Extensible Family Tree #17
Replies: 6 comments 2 replies
-
Wow that's actually super interesting ! It shouldn't be too hard to build, but a fantastic side project for sure :) |
Beta Was this translation helpful? Give feedback.
-
How about implementing it as a facebook app? |
Beta Was this translation helpful? Give feedback.
-
Wow,m I was really surprised to see this idea. I almost had same idea in my mind for a very long time. I will be super excited to work on this even if it was not selected by scaler. |
Beta Was this translation helpful? Give feedback.
-
I thought of this idea before but there are many apps which solves this problem. |
Beta Was this translation helpful? Give feedback.
-
This project is a great opportunity to play with smooth animations on the screen. One can't fit in a family tree on a single page view. It must have spanning and zoom capabilities with vector used wherever required. It's can be a good challenge to create a liquid design in action. Smooth animations with content at different zoom levels is the USP for the presentation tool Prezi and when the family tree becomes large enough, transitions need to be seamless. If we try to break it down, It's a showcase website with graphs at the core with each node specifying a person. One way to handle graphs in databases is to use a relational database.
For getting the tree information, we only require the family id.
The approvals system is actually quite interesting.
The web application can then take the relations and plot in on the HTML canvas or some other canvasing tool.
If anyone is interested, we can discuss on each part in detail before jumping into it all. |
Beta Was this translation helpful? Give feedback.
-
EnumsStatus
Relationship
EntitiesMember
Mapping
Family
Admins
Interface - The following API can be exposed using a REST Controller.// To be called during Sign Up.
createNewMember(name: string, email: string?): Member
// To be called during Sign In using id.
// To be called during Find member to add in the family using email.
getMember(memberId: string?, memberEmail: string?): Member
// Any member can create a new family by passing a name.
// To root of the family can be the admin who created the family.
createNewFamily(adminId: uuid, familyName: string): Family
// After member is onboarded, any member can suggest to add members in a family.
mapMemberToFamily(familyId: uuid, fromMemberId: uuid, memberId: uuid, relationship: Relationship): Mapping
// After a mapping is suggested, admin can approve the mapping and confirm the member in the family.
// After approval, all members should see the updated trees on their dashboards.
approveMapping(mappingId: uuid)
// Any member can get all the families that they are a member of.
getFamilies(memberId: uuid): uuid[]
// Any member can click on a family to open the family tree.
getFamily(id: uuid): Family
// Get all the members in the family.
getMembersByFamilyId(familyId: uuid): Member[]
// Get all the relationships for a member to render it's neighbors.
getRelationshipsByMemberId(memberId: uuid): Mapping[]
// Get all the relationships for a member to render the whole tree at once.
getRelationshipsByFamilyId(familyId: uuid): Mapping[] Please review and suggest if something clicks. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Idea Source:
There is a handwritten family tree made by the father of my maternal grandfather's mother, which contains the record of 4 generations. But after his death, it has not been extended and the chain is broken. Also, hard copy makes it even more difficult to be distributed to continue further.
Idea is to create a family graph that can be easily extensible by the newer generation. We can create a simple website that can keep a record of generations.
Features:
Beta Was this translation helpful? Give feedback.
All reactions