{"id":15042412,"url":"https://github.com/cyclenerd/gallery_shell","last_synced_at":"2025-04-09T09:07:00.480Z","repository":{"id":45760243,"uuid":"72986560","full_name":"Cyclenerd/gallery_shell","owner":"Cyclenerd","description":"📷 Bash Script to generate static responsive image web galleries.","archived":false,"fork":false,"pushed_at":"2023-12-22T12:12:12.000Z","size":11147,"stargazers_count":249,"open_issues_count":1,"forks_count":37,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-09T09:06:55.843Z","etag":null,"topics":["bash","bash-hacks","bash-script","exif-data-extraction","galleries","gallery","gh-pages","html","image-galleries","image-gallery","jpeg","mov","mp4","photo","photos","shell","simple","thumbnails"],"latest_commit_sha":null,"homepage":"https://cyclenerd.github.io/gallery_shell/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cyclenerd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"Cyclenerd"}},"created_at":"2016-11-06T11:35:27.000Z","updated_at":"2025-03-25T16:38:35.000Z","dependencies_parsed_at":"2024-09-25T01:41:16.267Z","dependency_job_id":"b06dca3c-5870-431b-84ca-e866fe8bef31","html_url":"https://github.com/Cyclenerd/gallery_shell","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyclenerd%2Fgallery_shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyclenerd%2Fgallery_shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyclenerd%2Fgallery_shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cyclenerd%2Fgallery_shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cyclenerd","download_url":"https://codeload.github.com/Cyclenerd/gallery_shell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248008631,"owners_count":21032556,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","bash-hacks","bash-script","exif-data-extraction","galleries","gallery","gh-pages","html","image-galleries","image-gallery","jpeg","mov","mp4","photo","photos","shell","simple","thumbnails"],"created_at":"2024-09-24T20:47:15.731Z","updated_at":"2025-04-09T09:07:00.459Z","avatar_url":"https://github.com/Cyclenerd.png","language":"Shell","readme":"# gallery.sh\n\n[![Badge: GNU Bash](https://img.shields.io/badge/GNU%20Bash-4EAA25.svg?logo=gnubash\u0026logoColor=white)](https://github.com/Cyclenerd/gallery_shell#readme)\n[![Badge: Linux](https://img.shields.io/badge/Linux-FCC624.svg?logo=linux\u0026logoColor=black)](https://github.com/Cyclenerd/gallery_shell#readme)\n[![Badge: Apple](https://img.shields.io/badge/Apple-000000.svg?logo=apple\u0026logoColor=white)](https://github.com/Cyclenerd/gallery_shell#readme)\n[![Badge: License](https://img.shields.io/github/license/cyclenerd/gallery_shell)](https://github.com/Cyclenerd/gallery_shell/blob/master/LICENSE)\n[![Badge: ShellCheck](https://github.com/Cyclenerd/gallery_shell/actions/workflows/shellcheck.yml/badge.svg?branch=master)](https://github.com/Cyclenerd/gallery_shell/actions/workflows/shellcheck.yml)\n[![Badge: Ubuntu](https://github.com/Cyclenerd/gallery_shell/actions/workflows/ubuntu.yml/badge.svg?branch=master)](https://github.com/Cyclenerd/gallery_shell/actions/workflows/ubuntu.yml)\n[![Badge: macOS](https://github.com/Cyclenerd/gallery_shell/actions/workflows/macos.yml/badge.svg?branch=master)](https://github.com/Cyclenerd/gallery_shell/actions/workflows/macos.yml)\n\nBash Script to generate static web galleries. No server-side programs (i.e. PHP, MySQL) required.\n\n## Overview\n\n`gallery.sh` is simple bash shell script which generates static html thumbnail (image, photo) galleries using the `convert` and `jhead` command-line utilities.\nIt requires no special server-side script to run to view image galleries because everything is pre-rendered. \n\nIt offers several features:\n* Responsive layout\n* Thumbnails which fill the browser efficiently\n* Download the original image file\n* Nice and simple Bootstrap CSS layout\n* Locally previewable galleries by accessing images locally (e.g. `file:///home/nils/pics/gallery/index.html`)\n* JPEG header EXIF data extraction\n* Auto-rotation of vertical images\n\nThis combination of features makes a better user experience than pretty much all the big online photo hosts. \nAll you need is a place to host your plain html and jpeg files. This can also be Amazon S3.\n\n## Installation\n\nDownload Bash script `gallery.sh`:\n\n```shell\ncurl -O \"https://raw.githubusercontent.com/Cyclenerd/gallery_shell/master/gallery.sh\"\n```\n\n## Requirements\n\n* [ImageMagick](http://www.imagemagick.org/) for the `convert` utility.\n* [JHead](http://www.sentex.net/~mwandel/jhead/) for EXIF data extraction\n\nOn a debian-based system (Ubuntu), just run:\n\n```shell\nsudo apt install imagemagick jhead\n```\n\nUnder macOS you can install it with...\n\n[MacPort](https://www.macports.org/):\n\n```shell\nsudo port install imagemagick jhead\n```\n\n[Homebrew](https://brew.sh/):\n\n```shell\nbrew install imagemagick jhead\n```\n\n## Usage\n\n```text\ngallery.sh [-t \u003ctitle\u003e] [-d \u003cthumbdir\u003e] [-h]:\n\t[-t \u003ctitle\u003e]     sets the title (default: Gallery)\n\t[-d \u003cthumbdir\u003e]  sets the thumbdir (default: __thumbs)\n\t[-h]             displays help (this message)\n```\n\nExample: `gallery.sh` or `gallery.sh -t \"My Photos\" -d \"thumbs\"`\n\n`gallery.sh` works in the **current** directory.\nJust load the `index.html` in a browser see the output. \n\nThe directory should contain a bunch of JPEG (.jpg or .JPG) files.\nIt does not work recursively. \nZIP files (.zip or .ZIP) and movies (.mov, .MOV, .mp4 or .MP4) are also considered.\nThey appear as a download button in the gallery.\n\n## Hint\n\nCreate a Bash alias for `gallery.sh`.\n\nOpen the `~/.bash_profile`,  `~/.bashrc` or `~/.bash_aliases` in your text editor:\n\n```shell\nnano ~/.bash_aliases\n```\n\nAdd your alias:\n\n```shell\nalias gallery='/home/nils/gallery_shell/gallery.sh'\n```\n\n## Demo\n\nThis [demo page](https://cyclenerd.github.io/gallery_shell/) is generated with [GitHub Action](https://github.com/Cyclenerd/gallery_shell/blob/master/.github/workflows/main.yml): \u003chttps://cyclenerd.github.io/gallery_shell/\u003e\n\n## Screenshots\n\n[![Screenshot: Gallery](images/gallery.jpg)](https://cyclenerd.github.io/gallery_shell/)\n\n[![Screenshot: Image](images/image.jpg)](https://cyclenerd.github.io/gallery_shell/thumbs/Landscape_8.jpg.html)\n\n## License\n\nGNU Public License version 3.\nPlease feel free to fork and modify this on GitHub (\u003chttps://github.com/Cyclenerd/gallery_shell\u003e).","funding_links":["https://github.com/sponsors/Cyclenerd"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyclenerd%2Fgallery_shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcyclenerd%2Fgallery_shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyclenerd%2Fgallery_shell/lists"}