A few years ago, I built an online photo album to share the pictures taken with out new digital camera we purchased soon after we got engaged to take pictures of all the events leading up to the wedding. To my surprise, my photo album became very popular within my family. At first, I was only posting my pictures, but soon started to receive requests from other family members to post their pictures from vacations and family events.
Last year, my wife spearheaded an effort to construct a family cookbook. Everyone within both of our families had the opportunity to submit recipes to include in the cookbook. She constructed hard copies and distributed the cookbooks as Christmas presents. People started asking how they could submit new recipes and get copies of the cookbook. Like the photo album, we were taken back with the overwhelming response… everyone loved it!
So I started to realize that there were other things that were family related which could get a similar response and our families would really enjoy. After telling a few friends about it, I realized that there were others who were interested in it as well.
With the “portal” architecture metaphor in mind, each section will be broken out into modules, all managed and contained within a framework. Each module will be a complete self-standing application. For instance, the media album is one module, the cookbook is another.
Overview (core components and modules):
The following contains a brief overview of the components included within the application.
The framework handles the global and core functionality for the application including:
- user management and creation
- security and authentication
- administration messages and module management
Directory Tree module:
The directory tree handles the address book & personal information for all people within a family in the portal:
- add, edit, delete people
- physical addresses
- email addresses
- phone numbers
- instant message addresses
- personal information (birthday, anniversary, etc.)
- manage family members
- family tree generator (graphical)
- reminder dates (anniversaries and birthdays)
- export [all or filtered] people in the contact list for a family or the whole portal to a CSV file to be imported into Microsoft’s Outlook or other personal information management data center.
- Sending email to a person or an entire family
Media Album module:
This module is essentially a replacement for my existing photo album, but with extra features and the capability to show short movies:
This module is will provide a medium to collaborate on recipes and the family cookbook:
The following outlines the technical requirements to run the application:
- Microsoft Windows 2000 or 2003
- Microsoft Internet Information Server (IIS) 5.0 or 6.0
- Microsoft SQL Server 2000
- Microsoft .NET Framework v1.1
Where to get more information and provide feedback on the Family Portal:
I’m using my personal blog (http://www.aconnell.com/blog/) as my primary brainstorm and conversation medium to discuss and just throw ideas out there. The application releases, source code, bug fixes, and message board are all in the Workspace I created for the application on www.GotDotNet.com (http://www.gotdotnet.com/Community/Workspaces/Workspace.aspx?id=5f1c9cb7-2f65-4cde-8c33-c061f85e309d). I’ll troll the message board on regular intervals and keep a lively interaction, but most communication and rants will be on this blog (GDN is a little slow). All bugs should be posted in the bug tracker in the Family Portal Workspace on www.GotDotNet.com so they can be tracked and the status can be updated.
You can get the latest news on the Family Portal application by subscribing to the RSS feed on www.GotDotNet.com. In addition, you can also subscribe to my RSS feed on my blog (http://www.aconnell.com/blog/) and watch the Family Portal post category.
One note: I won’t be using the source control on www.GotDotNet.com because it has a restriction on the length of project folder names. I’m one of those who uses descriptive names for my projects as well as assembly names. The source will be zipped and posted into the releases as well as the news items.