I have noticed that there is very little activity in developing even 3rd party integration for Drupal. I have tried the phpgedview with limited success. It still feels like two sites. The TNG Integration module seems to provide for sharing user account sign in, but little more.
I would like to make a genealogy site that would take advantage of Drupal's gallery and image management capabilities. I will use it to provide a photo sharing feature of high resolution photos with my extended family.
I will use the Book module to make nifty multidimensional (what we used to call hypertext) narratives. The complexity of family histories heading off into different directions is perfect for this (with using and makings some modifications to the Books Made Simple module).
Of course there are many other fun things that can be added to a family genealogy site with Drupal's flexible structure.
That leaves the buggerboo of displaying family trees. That is where programs like TNG have nailed it. I don't have the time (or brains) to write the code to match what is already done. I know with some javascript it can be done, but why re-invent the wheel?
My question is...has anyone found a third party program that seamlessly provides the family tree display in a Drupal site?
Is there a way to use TNG and integrate other database tables such as media?
Comments
PHPGedView
AldenC
I'm not a developer but I'd like to chime in and say that I love PGV at an administrator/user level, even if it hasn't been updated in years. [The back-end feels 'dirty'.]
However I would love to have the same functionality in a Drupal installation.
I think the challenge to a unified Drupal genealogy response is that there is no standard GEDCOM format for starters; that people all have different needs/wants; and then that modules need updating and that sometimes doesn't happen in a timely manner or at all (so it's out of reach for anyone but a coder to even use what may already exist).
Ultimately one Drupal distribution that could have components turned on or off to emulate the main stand-alone family history programmes out there would be amazing - not everyone needs or is comfortable with complexity.
Perhaps this discussion could be opened up to what is in the title of your post "Future of Drupal Genealogy".
Could we all contribute what we'd like to see, as well as any modules and idea of how to implement?
Over to you.
Thanks for your comment
The temptation to create a new module is great. The (kind-of-new) Relation module can make the parent-child node structure easy to develop. I have used that module with Views and Rules to do some amazing things to make the user interface more pleasant. The long-established taxonomy capability of Drupal will more than suffice in organization and linking of the media that is uploaded within a genealogy website. The Genealogy package could be set up as a distribution, or have the module integrate these modules. I would like to keep as much out of a custom module as possible to limit errors/conflicts and provide for maximum flexibility in the data structure for the user. Kind of the way Ubercart is all set up but you can easily make changes.
I have written a couple of small custom modules and know what I am up against. Again, the tree display is the one aspect of using Drupal I am most wary of. You can look at how a book has very limited built-in display options available today. But then it is true that to work through the graphical node display needs for a book are similar to the node display design for a family tree, so maybe this dual outcome would be worth the effort. For me that would be the initial proof-of-concept effort to undertake. Without a good graphic display, complete with javascript popup etc., the family tree will be too dry for anyone to be interested in. The table/grid form of display just won't cut it here.
So my basic vision for a genealogy site has three sections. The media gallery, the family tree, and the historical book. All three are connected and with taxonomy and relations, and organized through the Drupal database structure.
By using Drupal, there would be out-of-the-Drupal-box features that site owners could add such as:
-user-user cooperation/communication
-privacy rules based on user role
-slideshow/download/upload for media
-google mapping
Later features requiring some coding would be:
-time-line display
-data upload/download (GEDcom)
-report generation
What features do you think are important in a genealogy website Quartz?
My dream family history website would have ....
...the ability to upload other people's GEDCOMs or (SQL) databases intuitively after finding the common link and put the additions into a HOLD state allowing me to publish once I have verified accuracy. Individuals can be published without showing antecedent or descendant links. eg Unpublished, Hold or WIP, and Published.
...nothing to do with (non-standard) GEDCOMs after the initial upload.
...WIPs and sticky notes all on a user dashboard page so you could see at a glance what research directions you are taking for whom, and group investigations together.
...different permission (privacy) levels for different data fields. eg Admin may see present contact details for living people; but living people are not published, although user Joanne Bloggs may be assigned the permission to see the contact details of her branch of the tree to organise their family reunion next fall.
...a really funky visual display for the family tree that you could easily customise.
...a display of all the ways 2 people may be related to each other.
...ways to tell a story; add notes, locations, national flags; and generally make the person come alive.
...multilingual translations that can be turned on or off eg presently I use Danish, German and English so that if someone comes to the site from those language groups the site appears to them in their own language with the option of swapping to one of the others.
...a set of family history-specific statistics eg Number of individuals, total surnames, earliest birth year, person who lived the longest, family with the most children etc
...the ability to show or hide multiple sources for each piece of information and weight the source for accuracy
...a beautiful, organised image and document gallery that belonged to individuals, families or field information but could be displayed in a variety of ways according to the VIEW. ie all military items or all wedding photos associated with a location
...a customisable front page (Blocks and Views?)
...a robust intelligent search function
...a really, really easy upgrade path that never breaks the site ;)
...some form of collaboration component (not essential but it may have merits - like a forum or wiki that users can discuss how to proceed with an enquiry, what they remember about a person etc)
...social networking integration like ShareThis so people can share an individual, story, family, image, document etc from your site with others
...a back-up system that packages and sends me the database and media files on a pre-determined cycle eg akin to mysqldumper
...the ultimate feature of being able to select branches, families or the whole tree to publish into a printable e-book or tree-book (data, documents and images) so that one day I may be famous (just kidding!)!
I'm sure that there is more but those are my initial thoughts on features. Glad you asked? :)
I have a Drupal 7 family history site
You might want to take a look at my website http://sandesancestry.net
Built with Drupal 7 and the following modules:
- Views
- Ctools, page manager
- Panels
- Date, partial date
- Geolocation
- Private
- Colorbox
- Entity, entity reference
- Pathauto
No PHP coding done at all except for some slight template modification
The biggest issues I face are Gedcom import and Pedigree charts.
I would like to develop a Drupal Genealogy module and a distribution but that is beyond me at this stage.
I would be happy for a developer to collaborate with me.
Nice website!
Your ancestry site is a real good example of what is already possible with the current Drupal modules. I see you used entity reference instead of relation, that is worth a discussion in itself.
I think I found a way to make the pedigree charts and I plan to open a sandbox to test it. By using the Graph API I think I can greatly reduce the coding necessary to provide a graphical display of nodes. Should be fun!
Thank you for sharing your site with me. Please continue to contribute your thoughts on this subject. Maybe by working together we can come up with something others can use.
Thanks for your kind words
Thanks, the relationships between individuals need a relationship type (e. g. Father, son, wife etc) I messed around with the Relation module for a while but couldn't get it to work so I stuck with entity reference. The problem is that you have to attach both ends of the relationship - the individual needs to be attached to the family and the family needs to be attached to the individual. This leads to errors of course.
Before starting a module...
Before your start creating a module, you need to decide how you want to use it. Do you want to enter everything on-line through your web site, or do you want to create the data off-line in a stand-alone application and periodically update the web site by importing from a gedcom file? My preference is the latter. I think that attempting to do a bit of both would be a real can of worms.
If you want to work entirely on-line, you should consider enhancing the (currently abandoned) Family Tree module.
For the off-line option, take a look at my sandbox. The code there is basic, but will import a gedcom file (just individual and family records for now) and produce a pedigree chart. The pedigree chart was fairly simple (but tedious) to create using page manager. Desendancy charts are another matter altogether as they don't fit a fixed pattern like pedigrees do. A better way to approach charting is to make use of the awesome GraphViz project, which I am currently pursuing.
@AldenC Very interested in how you make out with GraphAPI.
@Mike-san Admire your perseverence in manually creating and linking every bit of data on your site. Do you have the data in gedcom format? -- you mentioned you would like to import gedcom.
gedcom format
Hello old_dog
For my own site, I don't need to import any data from a Gedcom file since it is virtually complete. I don't have this data in a Gedcom file. However for a Drupal Genealogy module to work, I think the ability to import data from Gedcom files is essential.
I've taken a look at your sandbox but it is all 'Greek' to me - I'm not a PHP expert.
Family Tree module -- my two cents
My concerns about the Family Tree module is that:
(1) It is an abandoned project, which means the code is in need of an update
(2) There is no Drupal 7 work that his been done, and we're fast approaching the rollout of Drupal 8. Porting from Drupal 6 to Drupal 8 is going to be very difficult given the fundamental changes that have taken place between the two versions. You'd pretty much have to scrap the D6 work, and start from scratch.
(3) Supporting a module across multiple Drupal versions is timeconsuming, and has diminishing returns as older versions of Drupal get deprecated. Personally I think a new project that starts with Drupal 7 support would be much easier to get underway and move forward.
Just a couple of observations from another developer.
Your work is appreciated!
I have seen many of your posts regarding Family Tree module and I know you have put a lot of effort into it. Your experience is critical to going in the right direction with this. It was unfortunate that the module was abandoned, but we all have life events (sometimes even end of life events) that take us away from the noble pursuits of Drupal development.
I have some limited programming skills, but I tend to be persistent until I can make it work...just takes time usually. I look forward to looking at what you have done so far.
I noticed there are other sandbox sites on related efforts and hopefully we can pool these contributions into something for all to use!
Thank you for your input here,
Sandbox Access
@old_dog...even though I have set up my GIT access I can't seem to get into your sandbox. Are you restricting access or is this still my mistake?
No restrictions
I'm unaware of any way to restrict access and certainly haven't attempted to.
I've just tried cloning as anonymous and had no problem -- you do have git installed on your system, don't you?
This command:
git clone --branch master http://git.drupal.org/sandbox/old_dog/1830800.git ftree
is what I used. It creates a directory "ftree" under the location you run the command from. You then need to copy that directory to "sites/all/modules/" in your drupal setup and install.
Please use the issue queue at the sandbox for any questions or comments about the code.
Link is misdirected
That's why you are getting an 'Access Denied'
The faulty link is
https://groups.drupal.org/freelinking/https%3A/%252Fdrupal.org/sandbox/old_dog/1830800The correct link is https://drupal.org/sandbox/old_dog/1830800
This should take you to old_dog's sandbox
Time to play
Yep, works good now thanks.
Drupal Genealogy -- Hey guys (and mike_san)
I had touched base with mike_san a few months back, right around the first of the year about this very subject, and he was kind enough to give me access to the work he has done, which is all sitebuilding (no custom programming) and is a pretty good start. I'm a Drupal developer for a firm out of Chattanooga TN, and have been doing genealogy research on my family for about 10 years, so this is a subject that is near and dear to my heart.
Mike, I haven't forgotten about this, but have just gotten slammed at work (we had some developers we hired that didn't work out on my team; unfortunately when they left the organization the workload per team member increased significantly, and my development efforts on a Drupal Genealogy functionality has had to go on the back burner for now).
Everybody, please keep the discussions going here about what each of you as an individual genealogy researcher and a Drupal developer / sitebuilder / user would like to see, including functionality from other sites or web based genealogy software that you particularly like or don't like, and we'll start getting together a list of features, and prioritize those as a group, if you're game.
Personally, I would like to see a set of modules that can be dropped into a Drupal site, sort of like Views, Drupal Commerce or Organic Groups can, that has a core set of functionality that provides the basis of every Drupal based genealogy site (content types, data organization, general flow, administrative configuration pages, etc.), and then additional modules that turn on certain features that not every researcher may want or need. In other words, the core functionality is the must haves, and provides the foundation for the plugins or the nice-to-haves.
My own personal vision, given enough time, would be to develop a Drupal Genealogy platform that has a Services component to it, which would allow for the external development of mobile applications (iOS, Android, MS Surface, etc). The mobile (and desktop applications for that matter) that could pull data from and send data to the website through a REST API (which is where Services comes in). Those mobile/desktop apps could even potentially be developed to work offline, and sync data to the website when the user desires, or when they come back into connectivity. The website (or web service) becomes the central repository for information, and the mobile apps become client applications that read from and write to the website.
My personal opinion is that things like GEDCOM imports, visual pedigree charts, etc. would be plugins for the core functional components. I personally don't like GEDCOM data because of the inconsistency of use, and the lack of good source documentation. I use GEDCOM data sort of the way I used Wikipedia -- it's a source, but not a reliable one, and I never rely 100% on someone elses' GEDCOM when I'm adding information to my genealogy research.
Just a dump of some of the thoughts running around in my head on this subject, and a contribution of my two cents.
Wiki Page on the subject
Hey Guys:
I created a wiki page that can be a place to start that "list" I mentioned above.
https://groups.drupal.org/node/422078
Great idea!
I will contribute to this after giving it some thought.
@lhridley: It sounds to me
@lhridley: It sounds to me like your vision is one of a Genealogy distribution or starter kit where one would download the whole shooting match; Drupal, contrib modules, custom modules, features, config, etc... Install and go. It's a lofty goal but would be so, so handy for someone looking to set up a family archive.
Lofty, yes, but even Drupal
Lofty, yes, but even Drupal started somewhere :). This is why I suggested that everyone contribute their opinions on must haves and nice to haves on the subject. Then, prioritize the list, start at the top and work your way down.
Drupal and genealogy
I have been using a Drupal 7 site just to display information about our family genealogy. The actual tree is maintained in Family Tree Maker and I upload xhtml pages for all the people by running Python scripts that read a GEDCOM export of the tree and turn it into linked xhtml pages which I upload to the site. This makes use of a Drupal 7 module I wrote called bulkpub. I looked at converting the module to Drupal 8, but I doubt I have the time to deal with all the many internals changes in Drupal 8. I may go with backdrop if it is actually viable.
My look at what it takes to write Drupal 8 modules of any sort did not fill me with optimism.
Creative approach...
I too use Family Tree Maker and am impressed how you worked around the tree page issue. But it sounds like there is very little interactivity with the pages and Drupal content.
I have not looked into Drupal 8, but what you say here sounds disheartening.
I love what drupal 8 will
I love what drupal 8 will bring to the table
Another Genealogy site...a WIP
At smithancestry.org, I've managed thus far to develop with only Views and a few other basic contributed modules. I imported my data from Family Tree maker, but was only successful in getting the "individuals" data, as the "family" data had some really weird relationships, that would have taken more time to decipher than simply recreating the Families in my lineage...I expect others to create their own families, since, I've got most of their ancestry already loaded. Other than selecting individuals, to fill "husband, wife and children" fields; all that was necessary was to enter marriage date and place...again all "individuals" had been imported. Using views and setting up a relationship between "Husband" (family page) and "IndivName" (individual page); it was pretty simple to make a heirarchial list of "Parents" with their "Children". They are of course all links, allowing quick navigation to either "Individual" or "Family" page for editing. Because my db is nearly 3000 individuals, I also added selective filters for last names. Dates of Birth/Death should be text (NOT Date format), and entered with Year, MM, DD; since you will want/need sorting by date of birth to get tree heirarchy. This resulted in a good tree appearance, ascending from 1700s to the present.
Still working on this genealogy project, but it's doable without any specialty "Genealogy" modules. Come visit smithancestry.org, if interested, but you'll have to create a guest account...I'll answer Qs and help if you need.
Jake