Skip to main content

REST API to get a picture of the day. This fetches photos from a Nextcloud Photos / Memories album. It let you specify to deliver a specific photo for a specific day, for unspecified days it chooses a random picture.

Project description

Picture of the Day

This project provides a REST API endpoint for delivering a Picture of the Day.

It requires a connection to a Nextcloud instance with Nextcloud Photos being enabled. You can also use Memories for Nextcloud, but you need to have Nextcloud Photos enabled for photo album support (Memories and Photos are sharing their albums).

You can then specify an album from which the photos are fetched. Afterwards, you can assign for each calandar day a specific photo. For days for which there is no photo assigned, a random photo is choosen.

The app remembers which photos have already been delivered and prefers photos for the random assignment which haven't been picked yet. If there are no more new photos, the already delivered photos will be picked again.

Motivation

My personal motivation for this app is to use it for an ESP32-S3-PhotoFrame, which has an e-ink display and therefore has ultra-low energy consumption and can run on a battery for months.

Important

[!CAUTION]
While this application has some form of basic authentication, I still recommend to only run this within a trusted home network without exposing it to the internet.

Install

To install the latest release:
pip install picture-of-the-day

To install from source:
pip install .

Developing & Testing

Install all dependencies:

pip install -U .[dev,tests]

Run tests:

pytest -v

Run

picture-of-the-day run

License

This project is licensed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

picture_of_the_day-0.6.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

picture_of_the_day-0.6.0-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file picture_of_the_day-0.6.0.tar.gz.

File metadata

  • Download URL: picture_of_the_day-0.6.0.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for picture_of_the_day-0.6.0.tar.gz
Algorithm Hash digest
SHA256 dd8edee82895d9c1b32379a63b94318f19a993c13aafab3655d616c8b7203005
MD5 ce7e4cb9f9cead08624b276f5948bcf0
BLAKE2b-256 2ac49015f760269726cfebbbafe50614599f8dd92087aaa89eff07f5bd1874b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for picture_of_the_day-0.6.0.tar.gz:

Publisher: ci.yml on Croydon/picture-of-the-day

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file picture_of_the_day-0.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for picture_of_the_day-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ca667bf215b2ada1c8ed0e779885ff2b05e8348ca7b9d982e2600791a1f5428e
MD5 0d19c58f02fd4baf52201c28ba2959ce
BLAKE2b-256 0ebab1360060aa64ec347113013ea47aba589f59837d92e6fc33b3b440b17ce9

See more details on using hashes here.

Provenance

The following attestation bundles were made for picture_of_the_day-0.6.0-py3-none-any.whl:

Publisher: ci.yml on Croydon/picture-of-the-day

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page