{"id":50732672,"url":"https://github.com/etechflow/module-vehicle-compat","last_synced_at":"2026-06-10T10:30:34.453Z","repository":{"id":362269708,"uuid":"1258159646","full_name":"etechflow/module-vehicle-compat","owner":"etechflow","description":"Vehicle compatibility (Make/Model/Year) editor + Part Finder widget for Magento 2. Admin tags products with the vehicles they fit; customers filter the catalog by their car. Theme-agnostic — works on Hyvä, Luma, and any custom theme.","archived":false,"fork":false,"pushed_at":"2026-06-03T10:56:29.000Z","size":132,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-03T12:14:45.458Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/etechflow.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","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-03T10:22:28.000Z","updated_at":"2026-06-03T10:56:32.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/etechflow/module-vehicle-compat","commit_stats":null,"previous_names":["etechflow/module-vehicle-compat"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/etechflow/module-vehicle-compat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etechflow%2Fmodule-vehicle-compat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etechflow%2Fmodule-vehicle-compat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etechflow%2Fmodule-vehicle-compat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etechflow%2Fmodule-vehicle-compat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/etechflow","download_url":"https://codeload.github.com/etechflow/module-vehicle-compat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etechflow%2Fmodule-vehicle-compat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34149132,"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-10T02:00:07.152Z","response_time":89,"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":[],"created_at":"2026-06-10T10:30:33.898Z","updated_at":"2026-06-10T10:30:34.442Z","avatar_url":"https://github.com/etechflow.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ETechFlow_VehicleCompat — Vehicle Compatibility + Part Finder for Magento 2\n\nA complete vehicle compatibility (Make / Model / Year / Part) system for Magento 2 stores selling automotive products. **Theme-agnostic by design** — bundles its own Alpine.js loader so it works on Hyvä, Luma, and any custom theme without code changes.\n\n- **Version:** 1.0.0\n- **Package:** `etechflow/module-vehicle-compat`\n- **Magento:** 2.4.4 – 2.4.8\n- **PHP:** 8.1, 8.2, 8.3\n- **License:** proprietary (see `LICENSE.txt`)\n- **Vendor:** ETechFlow — https://etechflow.com\n\n---\n\n## What's in the box\n\nTwo halves of one feature, intentionally bundled in one module:\n\n### Half 1 — Vehicle compatibility data\n\n- **`vehicle_compat_data`** product attribute (JSON) storing every (Make, Model, Year) combination a product fits.\n- **`parts_required`** product attribute (multi-select) tagging which part-types each product covers (key blade, transponder, immobilizer chip, etc.).\n- **Admin CRUD** for Makes and Models under **Catalog → Vehicles → Makes / Models**.\n- **CSV import** for bulk-loading vehicle compatibility data (`bin/magento etechflow:vehiclecompat:import-parts`).\n- **Product edit form modifier** — a visual Make/Model/Year picker tab on every product, so the admin doesn't hand-edit JSON.\n\n### Half 2 — Part Finder widget\n\n- **`/vehiclecompat/options/index`** — server-side filtered options endpoint. Each dropdown click sends `field=make|model|year|part` + current selections, server applies bidirectional filter and returns only matching options.\n- **`/vehiclecompat/tree/index`** — full vehicle tree (cached, browser-cacheable for 1h).\n- **`/vehiclecompat/find/index`** — find-parts results page that filters the catalog by the customer's vehicle.\n- **Shareable form fragment** (`ETechFlow_VehicleCompat::partfinder/form.phtml`) that drops into any layout — header modal, hero section, PDP sidebar, all use the same template.\n- **Self-contained Alpine.js bootstrap** — on Hyvä stores Alpine is already loaded; on Luma / custom themes the bootstrap lazy-loads Alpine from a CDN (URL is overridable for stores that want to self-host).\n- **Shared Alpine store** so multiple form instances on the same page (desktop hero + mobile hero + header modal) stay in sync.\n\n---\n\n## Theme compatibility\n\n| Theme | Status | What happens |\n|---|---|---|\n| **Hyvä** (Tailwind + Alpine) | ✅ Native | Alpine is global. The bootstrap shim becomes a no-op. Module just works. |\n| **Luma / Blank** | ✅ With bootstrap | The bootstrap shim detects no Alpine and lazy-loads it from a CDN. Module works. |\n| **Custom themes** (Luma parent) | ✅ With bootstrap | Same as Luma. |\n| **Custom themes** (Hyvä parent) | ✅ Native | Same as Hyvä. |\n| **Air-gapped / no-CDN stores** | ⚠️ Self-host Alpine | Replace the CDN URL in `view/frontend/web/js/alpine-bootstrap.js` with your self-hosted Alpine URL, or pre-install Alpine in your theme. |\n| **Headless / PWA Studio** | ⚠️ Use API only | Use `/vehiclecompat/options/index` directly from your headless storefront. The PHP-rendered form fragment is skipped in headless. |\n\nSee `COMPATIBILITY.md` for the full audit.\n\n---\n\n## Quick start\n\n```bash\n# 1. Extract into your Magento root\nunzip etechflow-module-vehicle-compat-1.0.0.zip -d \u003cmagento-root\u003e/\n\n# 2. Enable + migrate (creates DB tables + product attributes)\ncd \u003cmagento-root\u003e\nbin/magento module:enable ETechFlow_VehicleCompat\nbin/magento setup:upgrade\nbin/magento setup:di:compile      # production-mode only\nbin/magento setup:static-content:deploy -f\nbin/magento cache:flush\n\n# 3. Visit the admin\nopen https://your-store.example.com/admin/etechflow_vehicle/make/index\n# (Admin sidebar → Catalog → Vehicles → Makes / Models)\n\n# 4. Embed the Part Finder on your homepage / header\n#    Reference: USAGE.md → \"Embedding the Part Finder form\"\n```\n\n---\n\n## Documentation index\n\n| File | Purpose |\n|---|---|\n| `README.md` | Overview, features, theme matrix (this file) |\n| `INSTALL.md` | Manual + Composer install + verification + troubleshooting |\n| `USAGE.md` | Admin walk-through (Make/Model CRUD, product editor, CSV import) + how to embed the Part Finder widget |\n| `CONFIGURATION.md` | Alpine bootstrap CDN URL, server-side filter behavior, caching |\n| `COMPATIBILITY.md` | Theme + Magento + PHP matrix and the design choices that keep it portable |\n| `CHANGELOG.md` | Version history |\n| `UNINSTALL.md` | Clean removal |\n| `LICENSE.txt` | proprietary license |\n\n---\n\n## Support\n\n- Email: support@etechflow.com\n- Include: Magento version, PHP version, active theme, sample product with vehicle data, screenshot.\n\n---\n\n## License\n\nproprietary — see `LICENSE.txt`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetechflow%2Fmodule-vehicle-compat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fetechflow%2Fmodule-vehicle-compat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetechflow%2Fmodule-vehicle-compat/lists"}