Background
For years, I've used Google Photos. It's a great program for photo and video storage, allowing users to manage their content across a variety of platforms, including desktop and mobile. However, there is a key component of its design that I find frustrating, detailed in the user flow below.
When I click on the Mountains folder, I see that the image is there. Great! Strangely enough, though, the picture is still clearly visible in the Desktop view, demonstrating that Google Photos "duplicates" the picture instead of treating every file as if it can only have one location, as on other file management systems (i.e. Windows Explorer, Google Drive). Though the image isn't technically duplicated (it has the same exact URL as the image on the desktop), in practice, it's treated as a clone. This can make it difficult to see which files have been added to folders already.
Problem Solving
So, what exactly was I trying to accomplish? To determine this, I needed to identify the core issues.
No clear feedback for which files have been sorted!
Thankfully, there is a clear and straight-forward solution: Google Apps Script. This is a JavaScript-based scripting language intended to extend functionality for many of Google's products, including Docs, Sheets, Slides, Forms... and luckily, Photos!
It is cross-functional across many of the products in Google Workspace, allowing different programs to interact with one another, leveraging their specific strengths. One of the programs available for a user to write Apps Script in is Google Sheets. This suited my needs perfectly, as being able to write the results of my script to a spreadsheet would let me quickly and easily review info related to my files. So, I got to work coding and designing my program in Sheets! |
Coding
Having already identified the issue I wanted to resolve, half the battle was already won! Within a few days, I was able to create a program that scanned my Google Photos library, and gave me a link to every photo that was either not in a folder or in more than one folder.
Visual Design
After completing the program, I knew I wanted to share the code for others to use. To accompany the code I'd release on GitHub, I aimed to make the package more complete by releasing it alongside some key art and a logo.
In the art, I focused on the program's two focuses: showing which files were in 0 folders, and which were in more than one!
The completed key art is in a 1280x800 ratio, as advised by the Google Marketplace guidelines. Having these assets ready would facilitate the process of adding the app to the marketplace if I ever chose to do so.
Similarly, the icon is 1x1, allowing it to be used for an icon in the Google Marketplace.
The completed key art is in a 1280x800 ratio, as advised by the Google Marketplace guidelines. Having these assets ready would facilitate the process of adding the app to the marketplace if I ever chose to do so.
Similarly, the icon is 1x1, allowing it to be used for an icon in the Google Marketplace.
Closing
After completing all aspects of the program, I uploaded it to my GitHub. I use the tool on a frequent basis, and while it has a very specific use case, I felt it was important to freely share with anyone else who may have the same preferences for their file-storage needs.
Thank you for reading!
Thank you for reading!