{"id":25404881,"url":"https://github.com/nenotriple/image-watcher","last_synced_at":"2026-04-24T16:03:58.044Z","repository":{"id":277273453,"uuid":"931893538","full_name":"Nenotriple/Image-Watcher","owner":"Nenotriple","description":"Watch a directory for incoming images, view and filter via PNG chunk info.","archived":false,"fork":false,"pushed_at":"2025-02-15T20:03:14.000Z","size":140,"stargazers_count":8,"open_issues_count":10,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T20:13:14.685Z","etag":null,"topics":["image-database","image-dataset-management","image-sorting","png-metadata","png-metadata-export","stable-diffusion"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Nenotriple.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,"zenodo":null}},"created_at":"2025-02-13T02:57:21.000Z","updated_at":"2025-03-20T10:36:52.000Z","dependencies_parsed_at":"2025-02-13T04:34:40.423Z","dependency_job_id":"fdf9cf3f-b9ac-4552-a60c-e400827b2392","html_url":"https://github.com/Nenotriple/Image-Watcher","commit_stats":null,"previous_names":["nenotriple/image-watcher"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/Nenotriple/Image-Watcher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nenotriple%2FImage-Watcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nenotriple%2FImage-Watcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nenotriple%2FImage-Watcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nenotriple%2FImage-Watcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nenotriple","download_url":"https://codeload.github.com/Nenotriple/Image-Watcher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nenotriple%2FImage-Watcher/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32230421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"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":["image-database","image-dataset-management","image-sorting","png-metadata","png-metadata-export","stable-diffusion"],"created_at":"2025-02-16T04:24:59.388Z","updated_at":"2026-04-24T16:03:58.010Z","avatar_url":"https://github.com/Nenotriple.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/509b56a3-b95f-4d2d-931f-b40edf8c2ce2\" alt=\"icon\" width=\"50\"\u003e Image-Watcher\u003c/h1\u003e\n\u003cp align=\"center\"\u003eA simple tool to monitor and manage images in a directory with helpful features\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/f47f6670-9698-4635-b855-c89a0f6482b7\" alt=\"cover\"\u003e\u003c/p\u003e\n\n\n## [💾 Download Latest Release](https://github.com/Nenotriple/Image-Watcher/releases)\n\n\n## 📝 Usage\n- Download the latest release.\n- Launch the application and select a directory to monitor/manage.\n- Browse images by navigating with the arrow keys or using provided controls.\n- Filter and search images via PNG metadata.\n  - Currently only stable-diffusion-webui-forge/stable-diffusion-webui are supported/tested.\n- Saved images will be moved to a local folder `Saved Images`.\n- An image database will be created in the selected directory to handle metadata.\n\n\n## 💡 Tips / Features\n- Live Updates: Automatically detects new images.\n  - Stay on Index #1 to view new images as they're added.\n- Easily switch between the latest image and last viewed image using the quick-swap button. `⤸/⤹`\n- Quick Actions: Delete *(Del)* or move *(Ins)* images with keyboard shortcuts.\n- PNG Metadata: Display PNG metadata such as pos/neg prompt, and other settings.\n- Filter: Use the search bar to filter images based on metadata.\n  - Filter images and use the `Move All...` command to move all filtered images.\n  - Filtering supports advanced operators, see the *Filter usage and syntax* section below for more info.\n- Export Metadata: Batch or single export of PNG metadata to text files.\n\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch2\u003e🔍 Filter usage and syntax...\u003c/h2\u003e\u003c/summary\u003e\n\n### Usage:\n- Use the 'Search' menu and select a filter type(s).\n- Enter keywords based on the selected type(s).\n- Press 'Enter' to apply the filter.\n- Use the 'Clear' button to reset filters.\n- Use the 'Refresh' button to update the database.\n- Live Mode is disabled when filters are active.\n\n### Operators:\nQuick explanation: `AND` is `space`, `OR` is `~`, `NOT` is `-`, use quotes for exact phrases.\n\n- **AND**: Spaces are treated as operators.\n  - `mountain lake` and `\"mountain lake\"` are treated differently.\n  - Match *\"mountain\" **AND** \"lake\"* vs matching *\"mountain lake\"* exactly.\n ---\n- **OR**: Use `~` to match either term: `mountain ~ lake`\n  - Show either *\"mountain\"* **OR** *\"lake\"*.\n---\n- **NOT**: Prefix with `-` to exclude that term: `sunset -beach`\n  - Match with *\"sunset\"* but **NOT** *\"beach\"*\n---\n- **Quotes**: Use to match exact phrases: `\"mountain lake\"`\n  - Match *\"mountain lake\"* as a single term.\n---\n- Use a Mix of **AND**, **OR**, **NOT**, and **Quotes**:\n  - `\"mountain ~ lake\" sunset -beach`\n    - Show *\"mountain\"* **OR** *\"lake\"* at sunset but **NOT** *\"beach\"*.\n  - `-\"mountain ~ lake\" sunset beach`\n    - **NOT** images of *\"mountain\"* **OR** *\"lake\"* at *\"sunset\"* **AND** *\"\"beach\"*.\n\n\u003c/details\u003e\n\n\n## 🔧 Python Install/Setup\n1. Clone the repository: `git clone https://github.com/Nenotriple/Image-Watcher.git`\n2. Launch the app using `Start.bat`\n3. When prompted, install the required dependencies.\n4. The app will launch automatically after installation.\n5. Edit the `Start.bat` `FAST_START` variable to `TRUE` to instantly launch the app.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnenotriple%2Fimage-watcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnenotriple%2Fimage-watcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnenotriple%2Fimage-watcher/lists"}