Easy-to-use web app for instant image publishing and image browsing
About PhotoPortfolio
PhotoPortfolio is an easy-to-use web app for instant photo publishing and photo browsing.
App scans a photo folder on your server containing images. App automatically generates thumbnails for the grid only to improve performance.
Run it once and then no more coding, you only need to put images in folder and if you want adding text file for description.
Important: app needs PHP7 in order to work!
Request a feature or report a bug: Feedback portal
Features
- Simplicity The entire app consists of several files. PhotoPortfolio requires no installation, and it can be deployed on any web server with PHP7 and the GD, curl libraries.
- Instant and easy photo publishing Upload photos to the folder, and PhotoPortfolio does the rest.
- Responsive design PhotoPortfolio works well on mobile devices.
- Pagination PhotoPortfolio automatically splits photo collection into pages. You can specify the desired number of photo per page.
- Infinite scroll PhotoPortfolio supports infinite scroll.
- Masonry grid PhotoPortfolio supports masonry grid, you can specify the width of the columns.
- Basic EXIF data PhotoPortfolio extracts and displays basic EXIF info for each photo, including aperture, shutter speed, and ISO.
- Display geographical coordinates on a map For geotagged photos, you can view their exact locations on a map.
- Short URLs PhotoPortfolio can use a URL shortening service to generate short URLs for easy sharing.
- Optional description text You can add a description to each photo by creating an accompanying .txt file. The app can also read and display descriptions from the photo's UserComment EXIF field.
- Automatic language detection PhotoPortfolio automatically detects the browser language and picks the description text file with the appropriate language prefix.
- Translatable You can easily translate application by providing translated string in the file and setting up desirable default language in the config file.
- Flexible footer You can enable/disable footer with custom text
- Sticky header You can enable/disable sticky header in the config file
- Up button You can enable/disable up button in the config file
- Themes You can specify site theme in the config file (light, dark are available for now)
- Favicon Just replace favicon.ico with your own favicon
- Logo Just replace logo.png with your own logo
- Site title You can specify site title in the config file
- Site subtitle You can specify site subtitle in the config file
- Social links You can specify social links in the config file
- Color palette PhotoPortfolio displays image color palette under the single image
- Thumbnails PhotoPortfolio generates thumbs for the grid to improve performance
Requirements- A web server with PHP7 and the GD, curl library
- cURL
Installation and Usage- Install the required packages. On Debian and Ubuntu, this can be done by running the following command as root:
apt install apache2 php7 php7-gd curl git
- Download the archive with code and extract it into the document root of the server.
- Open the config.php file in a text editor and edit settings. This step is optional.
- Put photos into the photos directory (.jpg, jpeg, .JPG, and .JPEG).
- Make the PhotoPortfolio directory writable by the server using the
chown www
-data
-R PhotoPortfolio
command as root. - Point the browser to http://127.0.0.1/PhotoPortfolio/ (replace 127.0.0.1 with the actual IP address or domain name of your server).
You can add descriptions to photos by creating accompanying
.txt files. For example, to add a description to the
paris.jpg photo, create the
paris.txt file containing a short text. You can use HTML markup for formatting the text. To add description files in other languages, use the appropriate language prefix as follows:
de-paris.txt (for German),
ja-paris.txt (for Japanese), etc.
Tags
automatic, palette, gallery, grid, images, photo, masonry, mosaic, photos, portfolio, responsive, publish, themes, exif, infinite