Good looking public gallery for Google Photos (former Picasa web) that can be hosted for free on Google App Engine. In case you want you public gallery back after transition to Google Photos.
Kotlin JavaScript CSS HTML
Latest commit 7cbe128 Feb 21, 2017 @angryziber use bigger default font

What is it?

A good-looking frontend for public albums stored in Google Photos (former Google+ or Picasa web), with nice transitions, mobile device support, and full-screen photo browsing with quick loading (prefetching).

Perfect for those who still want to have a gallery of public albums after transition to Google Photos, which has no public gallery of it's own anymore.

Example gallery: Anton Keks Photos - use the link at the bottom to try it with your own gallery!

How does it work?

It's a small app made to be hosted for free on Google App Engine. It uses Google Web Albums Data API to fetch and display your albums and photos, so whenever you change anything on Google Photos/Picasaweb, it will become visible in this gallery.


  • Dark theme that emphasizes photos
  • Shows your existing public albums, no additional storage needed
  • HDPI/Retina screens use hi-res thumbnails
  • Search within the gallery (by tags, keywords, descriptions, etc) - currently not working because Google removed this feature from the API
  • Nice shareable URLs for albums, individual photos, search results
  • Gallery map if albums are geotagged
  • Optional content/blog in Markdown format - put it into web/content, see content branch for a sample
  • Full-screen photo viewer
  • Fast: minimum number of requests, optimized caching, preloading of next photos
  • Keyboard navigation
  • Mobile device support, eg iPhone, iPad, Android (including touch events)
  • Facebook Like buttons for albums and individual photos
  • Opengraph metadata (for FB sharing, etc)
  • Google analytics support
  • Viewing of other people's albums, just add "?by=username" parameter
  • Slideshow with adjustable delay, add "#slideshow" to the URL if you want it to start automatically
  • Showing of a single (weighted) random photo from all albums, just add "?random" parameter
  • ChromeCast support - send currently viewed photo to the TV (provided you own the ChromeCast dongle)

How to use it for your own photos Build Status

  • Clone this repository as described on Github
  • Specify your Google username, Google Maps key, etc in src/
  • Specify your AppEngine application ID in web/WEB-INF/appengine-web.xml
  • Uploading and testing
    • ./gradlew appengineUpdate - will upload the app to Google AppEngine
    • ./gradlew appengineRun - will run the app locally on port 8080
  • Or, the app is a standard Java Servlet-based application, so it will work with any other Servlet Container

    • ./gradlew war - will build the war file (web application archive)
  • If you use Intellij IDEA, you can import build.gradle and run all the actions from an IDE.

Picasaweb retirement

Since the beginning of 2016, Google has started removing features from Picasaweb API, and now the whole Picasaweb service has been closed, being replaced by Album Archive.

This gallery still works for your old public albums stored in the archive (or just Google Photos).

However, when you upload new albums to Google Photos, there is no obvious way anymore to mark them as public. It seems that Google Photos right now is built to be mostly private photo storage service.

Fortunately, there is still a way - find your newly uploaded album in your Google+ profile, press Share there and choose Public. After some time your album will appear in public Picasaweb API, and thus will become visible in this gallery. There is also this tool.

Some uploading tools that use the API (e.g. Picasa itself) may still mark the albums as public by default. More details here and here.