PhotoShelf
PhotoShelf is a web-based digital image management, archive and display system written in Perl, backended by PostgreSQL. It is used to catalogue and arrange into albums photos from a digital camera or any other source. It aims to be very featureful and a complete solution for the only place where your photos need to be stored. Current features include: Able to store thousands of images (author has 3000 currently); Arranges photos into albums with thumbnails; Album lists are very user friendly and can be nested; Upload images from the web - either raw .jpg, or tar/zip files can be automatically unpacked too; Metadata about images is stored, including photo exposure data, categorisation, keywords, dates; Automatically extracts information out of EXIF headers, used by many digital camers; Multiple users can have their own album hierarchy; Online help for every page; Anonymous access - a user can grant anonymous view access to albums, images, or selected images in an album; Uses a postgresql database as the backend - Image data is stored directly in a nested unix directory hierarchy, indexed within the database for fast access; and Can perform basic image manipulation functions from the web page.