[ project page ] [ web CVS ] [ demo ]

Welcome to the home page for PennAve, a dynamic photo gallery application written in Python. It is designed to be used in conjunction with F-Spot to organize and manage your photos.

You're probably asking, what good is yet another photo gallery program? Well, this one is a little different. It's designed to use technologies that will form the basis for the semantic web. This means that all output is done with XML and then translated to HTML with XSLT stylesheets. If you didn't understand any of that, don't worry, it just means that the underlying technology makes it really easy to extend PennAve. It also means that you can completely change the look of your gallery without modifying the code for PennAve itself - either choose to modify the style sheet for small modifications, or the XSLT sheet for large scale redesigns.

The project is still in a fairly new state as I only started writing it after we got a digital camera. When releases are made they will be available at the files section on SourceForge. In addition if you visit our project page on SourceForge, you can find all sorts of other helpful stuff, like a bug tracker and some mailing lists.

If you're impatient and want a brief idea of what it does, you can see a bit of a live demo with a bunch of pictures from my life on it.

Project Status

2007/05/23 - The long awaited version 0.4 of PennAve was released today. Be sure to grab it from the project page.
2006/08/22 - I've added some new features to PennAve that wil be out in the forthcoming 0.4 release. First, I've added support for the Last-Modified header. This allows clients to cache images, eliminating the need to send the images with every request. I've also added support for the canvas tag for some graphical elements. You can seem them right now at the demo site.
2006/08/11 - Version 0.3 of PennAve was released today! Download it and enjoy the new features, such as RSS feeds, slideshows, and the cool new customizable home page!
2006/07/24 - More sexy features are heading out for everyone. First, I've added support for RSS feeds when browsing the tag views. These are created dynamically for any combination of tags. Quite cool. Secondly, I added a javascript/ajaxy slide show with fading characteristics. It seems to work in all the browsers I've tested it on (FF 1.0, 1.5 and IE 6), however there is a slight problem with FireFox 1.0 that causes a quick blink between slides.
2006/07/14 - That's right, nearly two years after I first started the project, I've revived it. What's better, is that the demo site now shows something interesting. Among the major changes with the current revision of the software are the reliance on the database from F-Spot for tagging and organizing your photos and the use of CherryPy to allow you to run PennAve without a web server. Check back soon for a new release. Honest.
2004/08/03 - As a result of the wedding, I have many many pictures. This has exposed a problem with PennAve relating to the size of directories. Namely, it's basically a denial of service attack the first time you hit the web page of a directory with 100+ images in it. Not to mention what happens if multiple people hit it. To alleviate this, I'm moving up the time frame for the prescaling code to hit. This doesn't mean that I'm removing the auto-scaling stuff. That will still be present, I'm just making it so you can prescale the images and then hit the cached version without needing a call to the CGI. For this to work, the cache directory must be somewhere in your web accessible tree. More docs about that later.
2004/07/29 - I'm back from my wedding and getting into the whole grad school thing again. Hopefully more updates will come soon. I got some nifty ideas while on the wedding. While I'm at it, for the longer range, if anyone has an SVG world map can you email me? I'm particular interested in one where each state/country is it's own path. Thanks.
2004/06/28 - I've been busy at academic conferences for the past week and a half. On Friday I leave for the wedding and won't be back until the end of July. No updates for a while.
2004/06/18 - Release 0.1 is out the door. Grab it from the files page.
2004/06/15 - Back from my trip to Texas. I'm almost ready for a 0.1 release. I'm just making the output from the program look a little bit cleaner. I'm resisting the urge to over-optimize right now so things are a bit slow.
2004/06/07 - I'm in the process of cleaning up objects and making XML output more consistent. I leave for a trip on Wednesday and get back the following Monday so no commits for a few days. Hopefully a 0.1 release will follow shortly thereafter.
2004/06/05 - I think it's basically component complete in the CVS archive right now. So, if you'd like to pull a copy from CVS, you can tinker with it. See the CVS page for more information.
2004/06/05 - With all the problems I've had so far with SF, I'm wondering why so many people use it. I'm half tempted to install a copy of GForge and just use my own server on my cable modem. Anyway, lots of fun changes, but I can't commit them because CVS is broken.
2004/06/04 - Apparently the debilitating bug on SourceForge has been fixed so I've uploaded the CVS archive to the SF servers. Time to get some real hacking going.
2004/06/02 - Project started on SourceForge. Unfortunately, I'm currently being bit by the unable to commit bug for new projects, so I can't put anything in CVS yet. Logo