PhotoFloat is a new open source web photo gallery aimed at sleekness and speed. It keeps with an old hat mentality, preferring to work over directory structures rather than esoteric photo database management software. Everything it generates is static, which means it's extremely fast. Read the blog entry about it.
PhotoFloat consists of two segments – a python script and a javascript application.
The python script scans a directory tree of images, whereby each directory constitutes a folder. It then populates a second folder, known as the
The javascript application consists of a single index.html file with a single scripts.min.js and a single styles.min.css. It fetches the statically generated JSON files and thumbnails on the fly to create a speedy interface. Features include:
It is, essentially, the slickest and fastest, most minimal but still well-featured photo gallery app on the net. Try it.
Tweet$ git clone http://git.zx2c4.com/PhotoFloat
The code base is new, and things will become easier over time, but here's a general overview on how to get things setup.
$ git clone http://git.zx2c4.com/PhotoFloat $ cd PhotoFloat
$ rm web/js/999-googletracker.js
$ nano -w web/js/999-googletracker.jsModify the part that says UA-XXXXXX-X and put your own in there.
$ nano -w web/index.htmland then edit the title section accordingly. (Note: these last two steps in the future will be more generic and set from a global config file.)
$ cd web $ makeNote that you may optionally strip out HtmlUnit all together if you don't want it. Or if you want something faster and sleaker, PhotoFloat also integrates with my own Qt-based ServerExecute program.
$ mkdir albums $ mkdir cacheWhen you're done, fill albums with photos and directories of photos. You can also use symlinks.
$ cd ../scanner $ ./main.py ../web/albums ../web/cacheAfter it finishes, you will be all set. Simply have your web server serve pages out of your web directory.
If you have any suggestions, feel free to contact the PhotoFloat community and I via our mailing list. We're open to adding all sorts of features and working on integration points with other pieces of software.
Dig the work done here? Want to help support it? Feel free to donate.