{"id":35039624,"url":"https://github.com/gamingrobot/zallery","last_synced_at":"2026-03-18T01:31:15.359Z","repository":{"id":243170760,"uuid":"811671709","full_name":"gamingrobot/zallery","owner":"gamingrobot","description":"Gallery/Portfolio theme for Zola","archived":false,"fork":false,"pushed_at":"2025-07-15T00:59:28.000Z","size":7105,"stargazers_count":14,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-28T22:12:29.201Z","etag":null,"topics":["gallery","gallery-theme","portfolio","portfolio-theme","theme","zola","zola-theme"],"latest_commit_sha":null,"homepage":"https://gamingrobot.github.io/zallery-demo","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gamingrobot.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,"publiccode":null,"codemeta":null}},"created_at":"2024-06-07T04:23:17.000Z","updated_at":"2025-12-22T17:50:32.000Z","dependencies_parsed_at":"2024-12-14T02:23:04.431Z","dependency_job_id":"ee008d6b-d565-4ea7-9742-cc56ffe073cd","html_url":"https://github.com/gamingrobot/zallery","commit_stats":null,"previous_names":["gamingrobot/zallery"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/gamingrobot/zallery","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gamingrobot%2Fzallery","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gamingrobot%2Fzallery/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gamingrobot%2Fzallery/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gamingrobot%2Fzallery/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gamingrobot","download_url":"https://codeload.github.com/gamingrobot/zallery/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gamingrobot%2Fzallery/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30640024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-18T00:09:27.587Z","status":"ssl_error","status_checked_at":"2026-03-18T00:09:26.123Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["gallery","gallery-theme","portfolio","portfolio-theme","theme","zola","zola-theme"],"created_at":"2025-12-27T08:11:49.983Z","updated_at":"2026-03-18T01:31:15.311Z","avatar_url":"https://github.com/gamingrobot.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Zallery theme for Zola\r\n\r\nGallery and portfolio theme for [Zola](https://getzola.org).\r\n\r\nDemo Site: [gamingrobot.github.io/zallery-demo](https://gamingrobot.github.io/zallery-demo/)  \r\nPersonal Portfolio: [gamingrobot.art](https://gamingrobot.art/)\r\n\r\n## Screenshots\r\n\r\n| Light mode | Dark mode |\r\n| :------: | :-----------: |\r\n| ![light mode](screenshot-light.jpg) | ![dark mode](screenshot-dark.jpg) |\r\n\r\n## Features\r\n\r\n- Dark and Light mode\r\n- Auto creation of mobile friendly images\r\n- Auto creation of thumbnails\r\n- Auto conversion of images\r\n- Maximize button on images\r\n- Next and Previous artwork buttons\r\n- [medium-zoom](https://github.com/francoischalifour/medium-zoom) support\r\n- [ModelViewer](https://modelviewer.dev/) and [Sketchfab](https://sketchfab.com/) support\r\n- Video embed support\r\n- OpenGraph and Twitter embed support\r\n- Responsive and mobile friendly\r\n\r\n## Installation\r\n\r\nClone the theme into the themes folder:\r\n\r\n```bash\r\ngit clone https://github.com/gamingrobot/zallery.git themes/zallery\r\n```\r\n\r\nNote: It is recommended that you copy the `config.toml` from the `themes/zallery` folder to the root folder of your site.\r\n\r\nThen set your theme setting in `config.toml` to `zallery`:\r\n\r\n```toml\r\ntheme = \"zallery\"\r\n```\r\n\r\n## Customization\r\n\r\nTo customize the theme's colors you will need to copy the `_variables.scss` into your sites `sass` folder and create a `zallery.scss` file with:\r\n\r\n```scss\r\n@import 'variables';\r\n@import '../themes/zallery/sass/imports';\r\n```\r\n\r\nSee the demo site for an example: [github.com/gamingrobot/zallery-demo/tree/master/sass](https://github.com/gamingrobot/zallery-demo/tree/master/sass)\r\n\r\n## Options\r\n\r\n### Menu Items\r\n\r\nCustomize the header navigation links\r\n\r\n```toml\r\n[extra]\r\nmenu = [\r\n    {url = \"atom.xml\", name = \"Feed\"},\r\n    {url = \"https://github.com/gamingrobot/zallery\", name = \"Github\"},\r\n]\r\n```\r\n\r\n### Browser Bar Theme Color\r\n\r\nCustomize color to set the browser's url bar on mobile\r\n\r\n```toml\r\n[extra]\r\ntheme_color = \"#313131\"\r\n```\r\n\r\n### Author Url\r\n\r\nUrl used for the name in the copyright\r\n\r\n```toml\r\n[extra]\r\nauthor_url = \"https://example.com\"\r\n```\r\n\r\n### Cover Image\r\n\r\nCover image to use on the main gallery pages for opengraph and twitter embeds\r\n\r\n```toml\r\n[extra]\r\ncover_image = \"img/cover.webp\"\r\n```\r\n\r\n### Copyright and Powered by\r\n\r\nTo hide the copyright set this to `true`\r\n\r\n```toml\r\n[extra]\r\nhide_copyright = false\r\n```\r\n\r\nTo hide the \"Powered by Zola \u0026 Zallery\" set this to `true`\r\n\r\n```toml\r\n[extra]\r\nhide_poweredby = false\r\n```\r\n\r\n### Gallery\r\n\r\nSettings for the gallery view's thumbnails\r\n\r\n```toml\r\n[extra]\r\nthumbnail_size = 400 # size in pixels, you may need to adjust the media queries in _gallery.scss\r\nthumbnail_format = \"webp\" # auto, jpg, png, webp\r\nthumbnail_quality = 100 # value in percentage, only for webp and jpg\r\n```\r\n\r\n### `img` shortcode settings\r\n\r\nSettings for the `img` shortcode, allowing for automatic conversion and creating mobile friendly images\r\n\r\n```toml\r\n[extra]\r\ncovert_images = false # set to true to convert images to to the format in the image_format setting\r\ncreate_mobile_images = false # set to true to create mobile friendly versions of the image\r\nimage_format = \"webp\" # auto, jpg, png, webp\r\nimage_quality = 90 # value in percentage, only for webp and jpg\r\n```\r\n\r\n### Frontmatter settings\r\n\r\nThese settings are for the frontmatter on each artwork\r\n\r\n```toml\r\n[extra]\r\nthumbnail = \"image.jpg\" # image to resize into a thumbnail and cover image\r\nmodelviewer = true # enable modelviewer javascript for this artwork\r\n```\r\n\r\n### Javascript libraries\r\n\r\n#### ModelViewer\r\n\r\nSet to `true` to enable [modelviewer](https://modelviewer.dev/) support. This can also be set in the artwork frontmatter or in `config.toml`\r\n\r\n```toml\r\n[extra]\r\nmodelviewer = true\r\n```\r\n\r\n#### JSZoom\r\n\r\nSet to `true` to enable [javascript zoom](https://github.com/francoischalifour/medium-zoom) support.\r\n\r\n```toml\r\n[extra]\r\njszoom = true\r\n```\r\n\r\n#### GoatCounter\r\n\r\nSet to the goatcounter tag to enable [goatcounter](https://www.goatcounter.com/) support\r\n\r\n```toml\r\n[extra]\r\ngoatcounter = \"\"\r\n```\r\n\r\n## Shortcodes\r\n\r\n### `img`\r\n\r\n```jinja2\r\n{{ img(src=\"image.jpg\", mobile_src=\"image-mobile.jpg\", alt=\"alt text\", text=\"text\", fit=\"\") }}\r\n```\r\n\r\n- `src` (required) - Image path\r\n- `mobile_src` (optional) - Mobile friendly version\r\n- `alt` (optional) - Alt text\r\n- `text` (optional) - Text to put under the image (if `alt` is not specified, text will be use for alt text)\r\n- `fit` (optional) - Defaults to `fit-view`, can be set to `max-width` to make the image fill the width of the page\r\n\r\n### `video`\r\n\r\n```jinja2\r\n{{ video(src=\"image.jpg\", autoplay=false) }}\r\n```\r\n\r\n- `src` (required) - Video path\r\n- `autoplay` (optional) - Set to `true` to enable autoplay\r\n- `loop` (optional) - Set to `true` to enable looping\r\n\r\n### `youtube` / `vimeo`\r\n\r\n```jinja2\r\n{{ youtube(id=\"\", autoplay=false) }}\r\n{{ vimeo(id=\"\", autoplay=false) }}\r\n```\r\n\r\n- `id` (required) - Id of the video\r\n- `autoplay` (optional) - Set to `true` to enable autoplay\r\n\r\n### `model`\r\n\r\nNote: Requires `modelviewer` to be enabled in `config.toml`\r\n\r\n```jinja2\r\n{{ model(src=\"image.jpg\", skybox=\"\", poster=\"\") }}\r\n```\r\n\r\n- `src` (required) - Model path\r\n- `skybox` (optional) -  Skybox HDR\r\n- `poster` (optional) - Image to show when loading\r\n- `alt` (optional) - Alt text\r\n\r\n### `sketchfab`\r\n\r\n```jinja2\r\n{{ sketchfab(id=\"\") }}\r\n```\r\n\r\n- `id` (required) - Id of the model\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgamingrobot%2Fzallery","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgamingrobot%2Fzallery","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgamingrobot%2Fzallery/lists"}