Upload a local image directory into an Album in Google Photos. Works cross platform on mac/pc/linux.
Features:
- List current Albums in Google Photos
- Upload a directory into Google Photos as an Album
- Upload subdirectories from a main directory into Google Photos as Albums
Coded in .NET Core and leveraging the Google Photos API.
Ready to give it a try?
Please note that this is a hobby project and comes without any warranty, but seem to work fine!
For troubleshooting during execution look at the log file found in log/google-photos-upload.log
- Download the latest release for your operating system here
- Execute the application: i. On Windows 10: double click "google-photos-upload.exe"
- Follow the instructions in the application to upload images
- Recover Storage: Open Google Photos Settings website and Click 'Recover Storage' (will downgrade ALL your photos from Original down to High Quality)
- Install the .NET Core runtime version 2.1 or later
- Download the latest portable release here
- Execute the application on a shell / command prompt: dotnet google-photos-upload.dll
- Follow the instructions in the application to upload images
- Recover Storage: Open Google Photos Settings website and Click 'Recover Storage' (will downgrade ALL your photos from Original down to High Quality)
This is optional. There is a key provided in the source code which has constraints, but sufficient for testing.
- Obtain a Google Photos API key (Client ID and Client Secret) by following the instructions on Getting started with Google Photos REST APIs
NOTE When selecting your application type in Step 4 of "Request an OAuth 2.0 client ID", please select "Other". There's also no need to carry out step 5 in that section.
- Replace
YOUR_CLIENT_ID
in the client_id.json file with the provided Client ID. - Replace
YOUR_CLIENT_SECRET
in the client_id.json file wiht the provided Client Secret.
- Google Photos API v1 / Google Photos API homepage enables the API integration for Google Photos.
- ExifLibrary reads Image Exif properties to ensure Image date is correct before upload.
- .NET Core
- NLog
- COMING SOON: Mono.Options by the Xamarin team processes commandline arguments.
This is a hobby project. You are welcome to create an Issue or Pull Request if you have specific suggestions that can improve this small utility.
Licensed under the MIT license. No warranty!