PHP application for publishing your self-hosted photos simply and automatically to nanoGALLERY
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
nanoPhotosContent v0.9.2 Nov 26, 2015
composer.json Update composer.json May 20, 2016
composer.lock heroku May 20, 2016


⚠️ new version available

Please check the new version: nanoPhotosProvider2

⚪️ extension for nanoGALLERY

Publish your self-hosted photos simply and automatically to nanoGALLERY.
Content is provided on demand when browsing the albums of the gallery.
Generates thumbnails automatically.

To be used as an add-on for nanoGALLERY (

⚪️ Usage

1️⃣ Step 1: installation

On your webserver:

  • create a folder named nanoPhotosProvider where you want to store your photos
  • in this folder:
    • copy the files:
      • nanoPhotosProvider.php,
      • nanoPhotosProvider.class.php,
      • nanoPhotosProvider.cfg and
      • nanoPhotosProvider.Encoding.php
    • create a folder named nanoPhotosContent
      • copy your photos here
      • you can organize your photos in folders (= albums)
      • in the filenames, you can separate title and description with $$
      • add leading @@@@@ to the filename of the images to be used as album covers
    • edit the nanoPhotosProvider.cfg file for custom settings

2️⃣ Step 2: configure your HTML page
  • The page can be located anywhere on your webserver.
  • Install nanoGALLERY for jQuery (see
  • Configure the call to the plugin:
    • Use the specific parameters: kind and jsonProvider
      • kind: set value to 'json'
      • jsonProvider: URL to the nanoPhotosProvider.php file installed in step 1


    jQuery(document).ready(function () {
        thumbnailWidth: 150,
        thumbnailHeight: 150,
        kind: 'json',
        jsonProvider: '',
        locationHash: false

3️⃣ Step 3: test your page to see the result ;-)

4️⃣ Step 4: add/change content

Add files and folders, or renaname them. Please note that the generated thumbnails are never purged, so you may delete the _thumbnails folders to force a new generation.

⚪️ Custom configuration

Custom settings are defined in nanoPhotosProvider.cfg

Section Option default value Description
config fileExtensions "jpg|jpeg|png|gif" Supported file extensions
contentFolder "/nanoPhotosContent" Folder where albums and images are stored
sortOrder "asc" Filename sort ordr
titleDescSeparator "$$" Separator between title and description in the name of the file
albumBlackListDetector "!!!!!" Ignore albums (folders) containing this sequence in their name
imageBlackListDetector "_hidden" Ignore images containing this sequence in their name
albumCoverDetector "@@@@@" Leading sequence in the filename of the image to be used as an album cover
thumbnailSizes ⚠️ after changing any of these values you may need to manually clear the _thumbnails folders
width 150 Thumbnail width in pixels (note: the value must match the value of thumbnailWidth in your nanoGALLERY)
height 150 Thumbnail height in pixels (note: the value must match the value of thumbnailHeight in your nanoGALLERY)
crop false Crop images to avoid black borders

### ⚪️ Supported image formats JPEG, GIF and PNG.

⚠️ limitations

  • The nanoGALLERY option locationHash should not be enabled if albums have more than 2 levels.
  • multiple thumbnail resolutions are not supported.


©️ License

nanoPhotosProvider is licensed under CC BY-NC 3.0.
Only for personal, non-profit organizations, or open source projects (without any kind of fee), you may use nanoPhotosProvider for free.

⚪️ Requirements