Project of the Month, December 2003

phpGedView

phpGedView is a genealogy (family tree) program that allows easy sharing of genealogy information with other family members on the web. The program sports many features from a sophisticated tree view to an embedded calendar. It's the perfect way to share content with family, friends or other relatives who are trying to better understand their historical linage. As the name suggests, phpGedView is written in PHP and is Open Source. The project has been on SourceForge.net since June 2002 and has made a quick rise to one of the top 15 projects (out of 75,000) on the site. The SF.NET team is proud to make phpGedView SourceForge.net's December 2003 project of the month.

Project Name: phpGedView
Founded / Started:
June 2002

URL: http://phpgedview.sourceforge.net/
Project page: https://sourceforge.net/projects/phpgedview/

Description of project:
phpGedView is an online application that allows you to easily upload a GEDCOM file that has been exported from a desktop genealogy program and then navigate your family history online. It features an easy Web-based configuration process and customizable themes, as well as online editing capabilities, advanced privacy settings, and a portal for logged-in users.

Trove info:

  • Requirements: Web server, PHP, MySQL required if user wants to keep records in a database
  • Development Status: 5 - Production/Stable
  • Environment: Web Environment
  • Intended Audience: End Users/Desktop
  • License: GNU General Public License (GPL)
  • Natural Language: English, Dutch, Danish, Spanish, German, French, Polish, Turkish, Italian, Cinese, Russian, Swedish
  • Operating System: OS Independent
  • Programming Language: PHP
  • Topic: Dynamic Content, Religion, Genealogy

What exactly does it do...and what makes it unique?
phpGedView is a genealogy (family tree) program that allows easy sharing of your genealogy information with millions of researchers around the world. Unlike other programs, phpGedView gives researchers the ability to maintain and edit records and manages to put a wealth of data in the hands of other researchers. From its cleanly designed trees to a calendar of events allowing one to see all upcoming birthdays, anniversaries, etc. to a genealogy portal, there is nothing comparable available at any price, and this open source project is free.

phpGedView's user interface includes photos and multimedia and makes more genealogy information available through advanced DHTML and JavaScript. A relationship chart graphically charts the links connecting two people in the GEDCOM file. A Place Hierarchy shows all of the people who lived in the same places. A timeline chart allows you to view a timeline of the events in one or more persons life, and a calendar shows the events in your GEDCOM that occurred on a certain date. The researchlog add-on gives researchers a tool to track all research. With privacy settings you can protect the sensitive personal data of your living relatives but allow users to log in and view the data of all people or just those that they are related to. Users also get a unique experience through the MyGedView Portal. Another unique feature is provided by the GDBI project through a Java client application.

How did you get started?
I decided it was time to update my family history Web site. The old way to do this was to run your GEDCOM file through an HTML conversion tool to create thousands of HTML pages. These programs only provided limited customization of the look and feel. I tried to find a program, preferably Open Source, that would dynamically display the data but also let me easily change the design. I couldn't find anything that I liked, so I started writing my own in early 2002. I released the first version of phpGedView on SourceForge.net in June 2002. I didn't expect the program to gain popularity so quickly, and it has grown into more than I ever envisioned it could be.

What is the intended audience?
The intended audience is anyone who wants to share their genealogy online, as well as all visitors searching for their ancestors on the Internet. It requires a knowledge of the Internet and a basic understanding of how CGI applications function in order to install it.

How many people do you believe are using your software?
Like any server-side software it's hard to give an estimate based on downloads, but there are probably thousands of installations with a vast unknown user base. A search on Google returns 286,000 pages for phpGedView.

What gave you an indication that your project was becoming successful?
I started thinking that the project was getting successful when it began getting close to making the top 10 most active projects list on SourceForge.net and when other projects and developers wanted to team up with phpGedView. The size of the code has increased tremendously lately as an avalanche of RFEs poured in as more people started using phpGedView. Posts on the forum also increased exponentially.

What has been your biggest surprise?
My biggest surprise has been how fast the project has grown and how much positive response the project has received. Within a year the project made the top 10 list, and now in 18 months it has been chosen as the Project of the Month. And there is no sign of slowing down anytime soon. We've received as many as 60 new messages in a day. And just when I think that the project can't have any more major changes someone will suggest a cool new RFE that I just have to add and that starts a whole new set of feature requests.

Kosherjava: John Finlay's readiness to add feature after feature that users requested. I got involved because I wanted the ability to display Hebrew dates for genealogical events. I sent an email to John, who does 99% of the coding on phpGedView. Much to my surprise he responded that he was going to look into it. He had a working implementation two days later for me to test. This totally blew me away. When I suggested changes, John agreed to port Java code I wrote for this feature to PHP. I am really impressed with John's patience with contributers' coding as well as genealogy standards questions.

What has been your biggest challenge?
My biggest challenge has been trying to keep the communication channels open between myself and the developers and the user community and trying to balance new development with customer service and support. The other big challenge is not spending too much time on the project. I could do this all day, every day.

What are you most proud of?
There are so many unique and great things about this project that it is hard to be proud of just one of them. I am proud of the project as a whole and the way that is has been received by the Open Source community.

Why do you think your project has been so well received?
phpGedView is the best way for people to share their genealogy on the Internet the way they want to and still be dynamic and searchable.

Where do you see your project going?
I see the project becoming an online collaboration tool for family members working on their family history. The new research module add-on will be a great way for people to track their research online and provide a new way to source your genealogy information. I see the MyGedView Portal becoming a user customizable experience. I also want to add a new custom reporting engine.

How can others contribute?
The project needs more beta testers and more people to help answer the generic PHP support questions, such as how to properly configure PHP for sessions. People can contribute time to find bugs (not many left ;) ), submit ideas for new functionality, or better yet get involved in coding. Contact John Finlay if you want to be involved.

Do you work on the Open Source project full-time, or do you have another job?
I have another full-time job.

How much time would you say you spend, per week, on the project?
I spend anywhere from 20 to 40 hours a week on phpGedView.

How do you coordinate the project? Make assignments? Assign bugs? Perform regression testing?
Everyone uses the CVS and kind of just does whatever they want to do. You have to be fast though, or I might jump in and do it while you're not looking. ;-)

What is your development environment like?
1.5 GHz Dell Pentium 4 with Crimson Editor to do the PHP coding. Debugging is done on several different servers running different PHP configurations.

If you could change one thing about the project, what would it be?
Improved documentation with the code.

What's on your project wish list?
There is an extensive RFE list on the SourceForge.net project page, but my personal wish list is a customizable portal and a research log add-on that will allow me to add to facts and sources easily from completed research tasks. We'd like to implement an automatic update utility. Oh, and a research bot that does all my genealogy research.

Milestones

  • June 2002 - Project released on SourceForge.net
  • July 2002 - First translation into another language (Spanish)
  • October 2002 - The first production version v1.0 is released with the timeline chart
  • January 2003 - First MySQL version released
  • May 2003 - phpGedView teams up with JLifelines project to provide the first remote desktop client
  • May 2003 - Version 2.0 is released with a new improved user interface and customizable themes
  • June 2003 - New user and relationship based privacy added along with Relationship chart
  • July 2003 - www.phpgedview.net DNS name reserved
  • September 2003 - Version 2.50 released that combines MySQL and Index file mode and improved performance, and added new CGI protocol for the GDBI client and other clients
  • November 2003 - Version 2.60 with MyGedView Portal and Anniversary Calendar
  • February 2004 (planned) - Version 3.0 with customizable MyGedView Portal, enhanced research log, and new charts

More projects of the month


Project Name: phpGedView

Background of leader:

Name: John FinlayJohn Finlay
Age: 27
Occupation: Computer Specialist / Web Development
Education: BS in Computer Engineering from Brigham Young University
Location: Springville, Utah (USA)

Key Developers:
Roland Dalmulder (botak), NetherlandsRoland DalmulderRoland Dalmulder
Kosher Java (kosherjava), USA
Kurt Norgaz (kurtnorgaz), Germany

Quote about SF.net?
SourceForge.net is a great service to the Open Source community. It provides services to OpenSource projects that would otherwise go unpublished. phpGedView would have never made it off my own Web site if there weren't a place like SourceForge.net where I could host it and that could put me in touch with the Open Source community.

Why did you place the project on SF.net?
SourceForge.net is the best and most well-known Open Source repository for home-grown projects. It provides trackers and forums that allows developers and users to stay in touch and work together. Without a strong development team and an involved user community an unfunded Open Source project can never succeed. SourceForge.net provides that, and for free.

How has SF.net helped you?
Without SourceForge.net there would not be a phpGedView project. It makes filing RFEs and bugs really easy. The forums also put me in contact with other technical people who are interested in seeing this project grow and succeed.

The number one benefit of using SourceForge.net is:
Central coordination of the project, along with the way that SourceForge connects developers and users together.