{"id":51253456,"url":"https://github.com/zainibeats/weekly-receipt-tools","last_synced_at":"2026-06-29T08:30:45.204Z","repository":{"id":362259644,"uuid":"1256854723","full_name":"zainibeats/weekly-receipt-tools","owner":"zainibeats","description":"CLI tools for receipt workflows: build image grids, append receipt images to PDFs, and extract totals with a local vision model","archived":false,"fork":false,"pushed_at":"2026-06-11T08:21:49.000Z","size":89,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-11T10:13:56.762Z","etag":null,"topics":["automation","heic","image-processing","pdf","python","reciepts"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zainibeats.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-02T06:28:59.000Z","updated_at":"2026-06-11T08:22:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/zainibeats/weekly-receipt-tools","commit_stats":null,"previous_names":["zainibeats/image-pdf-tools","zainibeats/weekly-receipt-tools"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zainibeats/weekly-receipt-tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainibeats%2Fweekly-receipt-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainibeats%2Fweekly-receipt-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainibeats%2Fweekly-receipt-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainibeats%2Fweekly-receipt-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zainibeats","download_url":"https://codeload.github.com/zainibeats/weekly-receipt-tools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainibeats%2Fweekly-receipt-tools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34919882,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["automation","heic","image-processing","pdf","python","reciepts"],"created_at":"2026-06-29T08:30:43.287Z","updated_at":"2026-06-29T08:30:45.198Z","avatar_url":"https://github.com/zainibeats.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Weekly Receipt Tools\n\n\u003e **Note**: This project contains AI-generated code\n\nSeparate command line tools for weekly receipt work:\n\n- build a JPG grid from receipt images\n- append a receipt image page to an expense-report PDF\n- extract receipt dates and totals with a local vision LLM\n\nThe tools are intentionally separate. Use only the action needed for the current\nstep. Original images and PDFs are always preserved.\n\n## Setup\n\n```bash\npython -m pip install -e \".[dev]\"\n```\n\nCopy `.env.example` to `.env` and point it at your local AI server if you use\n`receipt-process`.\n\n## Menu Wrappers\n\nFor manual use without remembering commands, run the wrapper for your platform\nfrom the project folder:\n\n```bash\n./run-image-pdf-tools.sh\n```\n\nOn Windows, double-click `run-image-pdf-tools.bat`.\n\nThe wrappers create a local `.venv`, install `requirements.txt`, and show a\nmenu for making an image grid, appending an image to a PDF, or doing both in one\nflow. They require Python 3.12 or 3.13.\n\n## Tools\n\n- [`scripts/make-image-grid.py`](docs/image-grid.md): combines HEIC, HEIF, JPG,\n  JPEG, and PNG images into one balanced JPG grid.\n- [`scripts/append-image-page.py`](docs/append-image-page.md): appends a\n  JPG/JPEG image as a US Letter page at the end of an existing PDF.\n- [`receipt-process`](docs/receipt-processor.md): extracts receipt dates and\n  totals from HEIC, HEIF, JPG, JPEG, PNG, TIFF, BMP, and WebP images with a\n  configured local vision model.\n\n## Quick Examples\n\n```bash\npython scripts/make-image-grid.py ~/Pictures/receipts\npython scripts/append-image-page.py ~/Pictures/receipts/image-grid.jpg --pdf ~/Downloads/input.pdf\nreceipt-process ~/Pictures/receipts\n```\n\n## Project Docs\n\n- [Image grid usage](docs/image-grid.md)\n- [Append image to PDF usage](docs/append-image-page.md)\n- [Receipt processor usage](docs/receipt-processor.md)\n- [Receipt processor internals](docs/receipt-processor-internals.md)\n\n## Tests\n\n```bash\npython -m pytest\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzainibeats%2Fweekly-receipt-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzainibeats%2Fweekly-receipt-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzainibeats%2Fweekly-receipt-tools/lists"}