Skip to main content

Pretty and simple HTML photo galleries you can host yourself.

Project description

Simple Photo Gallery

Check out the new Project Page!

With Simple Photo Gallery you can create beautiful and simple photo galleries that help you tell your story. Check out the example gallery.

Example gallery

Overview

  1. Installation
  2. Usage
  3. Hosting
  4. Configuration
  5. About

Simple Photo Gallery is a simple command line tool written in Python that helps you create static HTML photo and video galleries that tell a story. Thumbnails, HTML, CSS and JavaScript files are generated automatically and can be uploaded to any static hosting, like for example AWS S3 or Netlify. The most important features:

  • Responsive layout suitable for any device (including touch gestures support).
  • Image captions extracted from the image metadata (EXIF tags).
  • Fully customizable layout with sensible defaults to get started quickly.
  • Create a gallery from an existing OneDrive or Google Photos album, without downloading the photos.
  • Automatic upload of the gallery to AWS S3 or Netlify.
  • Based on the PhotoSwipe JavaScript library.

Installation

Simple Photo Gallery can be easily installed with pip. If you don't have pip, please install the latest Python release.

pip install simple-photo-gallery

Example Usage

You can quickly create a gallery with the default settings. For more detailed information see Usage.

  1. Collect all the photos and videos you want to have in the gallery into a folder.
  2. Open a terminal and go to the folder with your photos. Use the following command to initialize the gallery. The script will ask you a few questions, like gallery name or background image. You can always just press Enter for the default settings and change them later.
gallery-init
  1. To generate the photos' thumbnails and to create the gallery HTML, CSS and JS files use the following command:
gallery-build

The gallery is ready! You can view it by opening the index.html file in the public folder. The public folder contains all the files you need for your gallery and you can host it on any static hosting provider.

Note Your photos and videos are copied in public/images/photos.

  1. Optionally, you can directly publish the gallery on Netlify, which offers a free plan.

See Gallery Configuration for more details how you can customize your gallery. You can also find two example galleries in the examples folder.

Hosting

You can automatically upload the gallery to AWS S3 or Netlify.

For Netlify you just need a free account and then you can run the following command to upload to a new website.

gallery-upload netlify

For AWS S3 you need to have Amazon Command Line Interface installed and configured and a bucket that can be accessed publicly (see the AWS tutorial for hosting a static website).

gallery-upload aws s3://<your_bucket>/<path>/

You can upload your gallery manually on any static hosting provider, like for example AWS S3, GitHub Pages, Netlify or others. Some scripts for automatic upload of the gallery are under work.

About

Simple Photo Gallery is developed by Vladimir Haltakov. I wanted an easy way to share photos with friends, but wasn't happy with the limited customization options that existing sharing solutions like Amazon Photos or iCloud offer.

Please contact me on Twitter if you have any questions, ideas for improvement or feature requests.

Project details


Download files

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

Files for simple-photo-gallery, version 1.5.0
Filename, size File type Python version Upload date Hashes
Filename, size simple_photo_gallery-1.5.0-py3-none-any.whl (2.5 MB) File type Wheel Python version py3 Upload date Hashes View
Filename, size simple-photo-gallery-1.5.0.tar.gz (2.4 MB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page