top | item 14848501

Show HN: Online family tree maker built with React

89 points| aqrashik | 8 years ago |plantafamilytree.com | reply

51 comments

order
[+] git-pull|8 years ago|reply
Example idea: Consider an example of a filled tree to show off. For instance, Game of Thrones

Pivot idea: Consider using the chart tool to map out relations of characters in stories, TV shows, legal cases, etc.

Service integration (client): Consider if your tree could fit in as a GSuite add-on: https://developers.google.com/apps-script/add-ons/

Service integration (host): create REST API's, or language libraries for people to use your tool programatically

Viral idea: Consider offering family trees for free so Wikia pages can link to them

Viral idea: Consider an embeddable app with zooming/panning that media websites and pay a monthly fee to integrate

Viral idea: Consider an import/export JSON schema users can use to share their graphs

[+] crooked-v|8 years ago|reply
If you really want to stress-test an arbitrary family tree documenter, try putting the X-Men in it.

http://img13.deviantart.net/4a05/i/2011/253/c/b/x_men_family... (and that's just the tip of the iceberg!)

Real family tress don't have to worry about time travel or cloning, of course, but that crazy stuff does actually serve as a reasonably good proxy of some of the strangest family trees out there (medieval European nobility, extended families with multiple divorces and remarryings, etc).

[+] basseq|8 years ago|reply
I love family trees: they're interesting, complex, data-driven, and beautiful. There are some very challenging decisions you need to make to make a tree readable, like whose ancestors to show, whose children, and how far back. To give you a sense, I have ~3,500 people in my family tree. I want different trees to show, say: a) all descendants of a root ancestor, or b) all of my ancestors.

This is reasonably easy to use and build out a simple tree. Here are two opportunities:

1) There are some UI areas that aren't totally intuitive (e.g., double click to add name), and generally it feels to "clicky" (e.g., too many clicks to get to the action I want). I think your goal is super-simple and "delightful" vs. full-featured.

2) The 1:1 relationship lines get complex, as every parent is linked to every child (so you end up with 2n lines that all overlap).

[+] aqrashik|8 years ago|reply
Thanks. Trees that are too big do get hard to manage currently and it is something I have been unable to decide on a solution for. I was thinking of allowing users themselves to expand or compress ancestors and descendants ( which would mean even more clicks :( ) to focus on the part of the tree they were currently working on.
[+] yosyp|8 years ago|reply
This is very interesting insight! May I ask which software or service you use to keep track of your family tree?
[+] k__|8 years ago|reply
3500?!

and I don't even know who my grandfather was...

[+] ameister14|8 years ago|reply
Rather than clicking the plus to add a person, I think a more intuitive action would be to double-click empty space. Whether or not you change that, the 'click + to add a person' doesn't work - when you put the word 'click' on a page, people will click that and not pay attention to the rest of the directions. Even if they did, it's a little confusing because 'click + to add a person' isn't clear. You need to be more specific. 'click the plus button to add a person' and then have the plus button move so people see it.
[+] jhaddon|8 years ago|reply
A simple guided tutorial, similar to the beginning of most mobile games, could help here. You literally walk the user through the process of adding one person (themself most likely) and then let them grow from there. With a 'skip' option of course, if they don't want or need their hand held.
[+] aqrashik|8 years ago|reply
Thanks, that makes sense. I'll see how I can make it more intuitive
[+] mapster|8 years ago|reply
or a palette of avatars you drag and drop into the network (son, daughter, man, woman, etc)
[+] jermaustin1|8 years ago|reply
When you launch the person dialog, focus on the Name input, then when they click enter, save and close the dialog. You are also missing out on a number of fields when creating a family tree (gender and maiden name come to mind fight off the bat).
[+] dpcx|8 years ago|reply
I've been a user and fan of Geni.com for several years now. I wish they'd update their interface to allow some friendliness like this.
[+] creativeembassy|8 years ago|reply
Same. I've considered making my own interface for building family trees, as an exercise in UX design. But I'd want it to plug directly into Geni. You can't beat the feature to find other users' trees that match yours. Find long-lost cousins and great-great-great-whatevers that you didn't know you had.
[+] neRok|8 years ago|reply
Good effort. I tried making something similar years ago, and it was hard (the visual side, not the data side).

I don't know what your goals are with this though. I don't want to be the bearer of bad news, but to 'genealogy enthusiasts', ie the people regularly spending money in this domain, your website is no more than a toy. In fact, I'm pretty sure that Ancestry.com offers this same tree building functionality for free (when you pay for a subscription with them, it is for the research capability, not the data entry capability).

[+] fiatjaf|8 years ago|reply
I've searched my entire life for a way to write simple family trees with custom data, fast, with or without a lot of information.

Then I've come up with this: https://github.com/fiatjaf/rel, which is a simple way to create triples, then render dot graphs, or any template actually, with them. The database is actually a bunch of YAML files representing each node in the graph (the relationships are stored in the nodes' files also).

[+] Xeoncross|8 years ago|reply
$4.99 a month seems a bit steep for what looks like a very basic UI with no features like multi-user editing or photos or anything other than a node-link builder.

It's still a nice UI for the primary task.

[+] mathgeek|8 years ago|reply
I'll admit that I spent a little too much time on this trying to create the most interconnected tree I could imagine, just to see how many "my descendent is also my ancestor" connections are possible. The flexibility of this is pretty impressive.
[+] ludicast|8 years ago|reply
Beautiful job.

There might be some people posting "why didn't you just..." but I used this to show my kids their family tree and they really liked it.

Freeloaded though, so you need a way to compell people to pay (say extra large posters of the tree).

[+] losteverything|8 years ago|reply
Post to r/genealogy as there are requests from time to time for tree makers.

Fyi. The church of latter day saints (Mormons) have familysearch.org which has circles to show generations. The church has for decades housed and built the largest library for finding relatives. I believe this is because once you enter the church you can "save" all your deceased relatives going back as far as you can.

The tree is really not important to genealogy nuts....

[+] dankent|8 years ago|reply
I really like the overall approach - definitely a nice friendly way to edit a tree.

The standard way for family trees to link children with parents is through the relationship of the parents. Did you avoid doing that on purpose?

The problem with having a separate parent/child link for every parent/child relationship is that it gets very crowded if the parents have several children.

[+] fiatjaf|8 years ago|reply
I don't have experience in this area, but wouldn't the standard way get pretty messy in modern relationships, in which people have multiple children with multiple different alternating parents?
[+] garyfirestorm|8 years ago|reply
I couldn't download the tree i just drew. It gave me an 'unknown error while downloading' Chrome on Google Pixel
[+] zwischenzug|8 years ago|reply
Coincidentally, I was talking to my father about getting his family tree work 'stored' in some digital format for future generations.

It struck me that a simple directory structure with info about each person in each directory, text files with info in, and then tar'd up would be about the most future-proof format you could get.

Anyone else thought about this?

[+] basseq|8 years ago|reply
That might be the "easiest", but it's not the most portable, and would be a nightmare to navigate. I'd recommend he work in a software package that can export to GEDCOM. That's a structured data format used by genealogists to track relationships and metadata. The current version is 21 years old, and the original spec was designed in 1984. It's robust and industry-standard. Every single genealogical product worth its salt will be able to work with that format (and export to it).

I hate to recommend them, but ancestry.com has one of the best interfaces in a SaaS product, with a ton of data on the back-end if you are doing research. An actual application (Family Tree Maker comes to mind, but don't quote me or take that as a recommendation) might be better for just "documenting" research.

[+] matt_morgan|8 years ago|reply
Nice! BTW I've never found a really nice, easy way to draw up organizational hierarchy charts (I've always used Dia or similar, and that's fussy), and I guess it's the same thing more or less?
[+] fiatjaf|8 years ago|reply
Have you ever looked into Graphviz?

Here's a demo of the same old C Graphviz program running on JS: http://viz-js.com/

[+] innopreneur|8 years ago|reply
Nice work. Which library did you used for rendering connectors? I don't know how would you monetize it if you plan to. Also are you planning to open-source the code base?
[+] aqrashik|8 years ago|reply
It's just svg circles animated with css so no libraries were required. I've tried to keep external libraries to a minimum
[+] sAbakumoff|8 years ago|reply
OOC - what value "built with React" brings to the thing you have implemented?
[+] dulcinea|8 years ago|reply
Is this project downable? Github?
[+] iso-8859-1|8 years ago|reply
No. It's proprietary. And you can't even save without paying! :O
[+] ecesena|8 years ago|reply
Any reasons for not having Facebook login (and perhaps deeper integration)?
[+] aqrashik|8 years ago|reply
No reason in particular, but I don't have a Facebook account so integration with Facebook would have required me to sign up first to test the integration. I don't mind creating an account on Facebook if required, but I am trying to avoid it if possible.