Kivy-based application developed to run on a raspberry pi. Designed to display photos synced from a Google Photos album on a touchscreen display. Created for Christmas 2023 as a gift for my fiance wife and father.
- Photo Synchronization: Integrates with Google Photos API to sync photos.
- Interactive UI: Navigate through photos with touch gestures.
- Weather and Time Display: Fetches and shows current weather and time.
- Automatic Updates: Periodically syncs new photos and deletes old ones.
- Install Python: Ensure Python >=3.9 is installed on your Raspberry Pi.
- Install Dependencies:
pip install -r requirements.txt
- Configure API and Local Settings:
- Create a
config.json
with keys likeapi_service_name
,api_version
,scopes
,local_folder
, andalbum_id
. - Save your Google API credentials in
client_secret.json
.
- Create a
- Initial Photo Population:
- Run
sync_photos.py
initially to populate your local folder with photos from the specified Google Photos album.
python sync_photos.py
- Run
- Start the Photo Display:
- After the initial setup, use
run_photo_display.py
to handle photo synchronization and display.
python run_photo_display.py
- After the initial setup, use
- The script uses the pickle module for saving and loading Google Photos client credentials.
- For new installations or invalid credentials, a login window will prompt you for authentication.
- A sample
.service
file is provided in/services
for configuring the app to run withsystemctl
.
This project is licensed under the MIT License.