{"id":13646812,"url":"https://github.com/robrotheram/gogallery","last_synced_at":"2025-12-15T02:04:36.496Z","repository":{"id":34283379,"uuid":"169925894","full_name":"robrotheram/gogallery","owner":"robrotheram","description":"Static Site generator but for images. Its like Hugo but for large photo galleries","archived":false,"fork":false,"pushed_at":"2024-04-07T16:02:12.000Z","size":30517,"stargazers_count":132,"open_issues_count":2,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-08-02T01:26:27.375Z","etag":null,"topics":["dashboard","gallery","golang","portfolio","react"],"latest_commit_sha":null,"homepage":"https://gallery.exceptionerror.io","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/robrotheram.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2019-02-09T23:44:31.000Z","updated_at":"2024-07-04T11:56:24.000Z","dependencies_parsed_at":"2024-01-16T10:37:32.176Z","dependency_job_id":"29bb4f3d-18c0-41c4-be18-45a35cc9fa8f","html_url":"https://github.com/robrotheram/gogallery","commit_stats":{"total_commits":265,"total_committers":5,"mean_commits":53.0,"dds":0.3207547169811321,"last_synced_commit":"f9cabfc4e425ffe724e224ee5d7dd255ad153217"},"previous_names":[],"tags_count":34,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robrotheram%2Fgogallery","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robrotheram%2Fgogallery/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robrotheram%2Fgogallery/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robrotheram%2Fgogallery/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robrotheram","download_url":"https://codeload.github.com/robrotheram/gogallery/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223880296,"owners_count":17219097,"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":["dashboard","gallery","golang","portfolio","react"],"created_at":"2024-08-02T01:03:08.020Z","updated_at":"2025-12-15T02:04:36.491Z","avatar_url":"https://github.com/robrotheram.png","language":"JavaScript","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# GoGallery\n***Its like Hugo but for large photo galleries***\n\nGoGallery is a static site generator designed just for large photo sets. \nThe problem is that just my modest approximate 1000 image gallery is around 5GB in size. This means traditional static stie generators where you host everything is github is not going to work. Also I do not want to keep reorgaising my photos or rely on some database. I have my photo in folders (albums) and I needed a tool to generate a webpage for those images.\n\nIncomes GoGallery just point it at your photos and it will generate a static site for with a  customizable theme. The template language is Handlebars no fancy Javascript single page webapps here. What is included. is image optomization into multiple sizes for the web and the site also generates a PWA so it can act like a desktop/mobile app. Chrome Lighthouse scores the site at 93/100 for performance and 95/100 for accessibility\n\nThe Software also has a dashboard that you can use to manage the photos e.g change captions add albums to be hidden etc. You can also preview the site using the serve command \n\n\n## Usage\n\n```\ngogallery [flags]\n```\n\n### Options\n\n```\n      --config string   config file (default is $HOME/.gogallery.yaml)\n  -h, --help            help for gogallery\n```\n\n### SEE ALSO\n\n* [gogallery build](docs/cli/gogallery_build.md)\t - build static site\n* [gogallery deploy](docs/cli/gogallery_deploy.md)\t - deploy static site\n* [gogallery serve](docs/cli/gogallery_serve.md)\t - serve static site\n* [gogallery template](docs/cli/gogallery_template.md)\t - extract template\n\n\n---\n\n## History\n\n The inspiration for this gallery is to provide a some of the functionaities of my old gallery cms Koken which has had no updates in over a year+ and had gone silent. *NOTE* that this is not a replacement for Koken just the very limited features I was using. \n\nThe application uses react frontend and a seperate react dashboard that supports upload and managing photos in collections. \n\n\n## Demo\n\n\nDemo at https://gallery.exceptionerror.io \n\n## Screenshots\n\n### Dashboard/App\n\n| Dashboard Home | Settings | Tasks |\n|----------------|----------|-------|\n| ![Homepage](docs/homepage.png) | ![Settings](docs/settings.png) | ![Tasks](docs/tasks.png) |\n\n| Album View | Sidebar |\n|------------|---------|\n| ![Album](docs/album.png) | ![Sidebar](docs/sidebar.png) |\n\n### Generated Website\n\n| Website Home | Photo Page | Collection Page |\n|--------------|------------|-----------------|\n| ![Website Home](docs/website-home.png) | ![Website Photo](docs/website-photo.png) | ![Website Collection](docs/website-collection.png) |\n\n\n## Contributing\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\n\nPlease make sure to update tests as appropriate.\n\n## License\n[apache-2.0](https://choosealicense.com/licenses/apache-2.0)\n\n\n\n## Building GoGallery\n\nYou can build GoGallery from source using Go. Make sure you have Go 1.20 or newer installed.\n\n### Standard Build (CLI and Web)\n\nYou can use the provided Makefile for building:\n\n```bash\nmake build         # Build the GoGallery CLI/web binary\nmake build-themes  # Build all theme assets (npm install/build/clean in each theme)\nmake clean         # Remove built binaries\n```\nThis will produce the `gogallery` binary in your current directory.\n\nOr, to build manually:\n\n```bash\ngo build -o gogallery main.go\n```\n\n### Building the Fyne Desktop App\n\nYou can use the Makefile to build the Fyne desktop app and install dependencies:\n\n```bash\nmake fyne-cli           # Install the Fyne CLI tool\nmake fyne-deps-ubuntu   # Install Fyne dependencies (Ubuntu)\nmake fyne-deps-fedora   # Install Fyne dependencies (Fedora/RedHat)\nmake fyne-build         # Build the Fyne desktop app for your platform\n```\n\n- The `fyne-build` target will auto-detect your OS and build the appropriate package.\n- You can also run `make all` to install Fyne CLI and build the desktop app in one step.\n\n\u003e For more details, see the [Fyne documentation](https://developer.fyne.io/started/packaging) and the GoGallery wiki.\n\n## Theme Development\n\nSee the [Theme Development Guide](themes/DEVELOPER_README.md) for instructions on building and customizing GoGallery templates and themes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobrotheram%2Fgogallery","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobrotheram%2Fgogallery","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobrotheram%2Fgogallery/lists"}