{"_id":"@a1local/adpages-mobile-cta-checker","name":"@a1local/adpages-mobile-cta-checker","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@a1local/adpages-mobile-cta-checker","version":"0.1.0","description":"Dependency-free CLI for checking saved local-business HTML for mobile CTA, tap target, and tracking preservation issues.","type":"module","license":"MIT","homepage":"https://a1local.com.au/extensions/","repository":{"type":"git","url":"git+https://github.com/a1local/adpages-mobile-cta-checker.git"},"bugs":{"url":"https://a1local.com.au/extensions/support/"},"sideEffects":false,"main":"./src/index.mjs","exports":{".":"./src/index.mjs"},"bin":{"adpages-mobile-cta-checker":"bin/adpages-mobile-cta-checker.mjs"},"scripts":{"check":"node scripts/check.mjs","smoke":"node scripts/smoke.mjs","sample":"node bin/adpages-mobile-cta-checker.mjs --html-file examples/sample-page.html --final-url https://example.com/?utm_source=google&gclid=sample-click --required-param utm_source --required-param gclid","sample:text":"node bin/adpages-mobile-cta-checker.mjs --html-file examples/sample-page.html --final-url https://example.com/?utm_source=google&gclid=sample-click --required-param utm_source --required-param gclid --format text","pack:dry-run":"npm pack --dry-run","prepublishOnly":"npm run check && npm run smoke"},"keywords":["mobile-cta","local-seo","landing-page","website-audit","tap-targets","utm","agency"],"gitHead":"5792ca65cb49cf8bad712f6a3f9f1bacab654159","_id":"@a1local/adpages-mobile-cta-checker@0.1.0","_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-BEfQ26x1sk4TaFs80xgZdHIHhhrRob53YX2AatfZn5Cif2N2pnXAr81xPeF/guuB95ibaQx2+pJFyWmnMgaPuQ==","shasum":"e7dec799cbd66250950cca1b8808f2e448a8bea7","tarball":"https://registry.npmjs.org/@a1local/adpages-mobile-cta-checker/-/adpages-mobile-cta-checker-0.1.0.tgz","fileCount":9,"unpackedSize":50418,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD1OHX0ovTDi6Vm63lHdNCNk9wimGv84nr5IbEydIgNxwIhANt2h4olTxYZwm/++EWE+zk2q5/76eBoOlDgE1T+C0fp"}]},"_npmUser":{"name":"a1local","email":"extensions@a1local.com.au"},"directories":{},"maintainers":[{"name":"a1local","email":"extensions@a1local.com.au"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/adpages-mobile-cta-checker_0.1.0_1779687324003_0.4385837744214858"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-25T05:35:23.836Z","0.1.0":"2026-05-25T05:35:24.162Z","modified":"2026-05-25T05:35:24.367Z"},"maintainers":[{"name":"a1local","email":"extensions@a1local.com.au"}],"description":"Dependency-free CLI for checking saved local-business HTML for mobile CTA, tap target, and tracking preservation issues.","homepage":"https://a1local.com.au/extensions/","keywords":["mobile-cta","local-seo","landing-page","website-audit","tap-targets","utm","agency"],"repository":{"type":"git","url":"git+https://github.com/a1local/adpages-mobile-cta-checker.git"},"bugs":{"url":"https://a1local.com.au/extensions/support/"},"license":"MIT","readme":"# AdPages Mobile CTA Checker\n\nDependency-free CLI and library for checking saved local-business HTML for mobile conversion problems before a page, campaign, or client handoff goes live.\n\nThe checker is designed for agencies and local marketers who need quick evidence that a page has a usable Mobile CTA path: above-the-fold action, sticky mobile affordance, tappable phone/form/location CTAs, tracking preservation, and a focused primary action.\n\nBuilt by [AdPages from A1 Local](https://a1local.com.au/extensions/) as a free local-business website QA tool.\n\n## Publishing Position\n\n- Free no-login QA tool for local SEO, paid-search landing pages, and web design launch checklists.\n- Useful as a resource-page placement asset because it runs on saved HTML and does not crawl live websites.\n- Later monetisable with hosted batch checks, branded reports, benchmark data, team templates, or white-label agency exports.\n\n## Install\n\nThis package is intentionally dependency-light and can run directly with Node.js:\n\n```sh\nnpm --prefix packages/adpages-mobile-cta-checker run check\nnpm --prefix packages/adpages-mobile-cta-checker run smoke\nnode packages/adpages-mobile-cta-checker/bin/adpages-mobile-cta-checker.mjs \\\n  --html-file packages/adpages-mobile-cta-checker/examples/sample-page.html\n```\n\nFrom the package folder:\n\n```sh\nnpm run sample\nnpm run sample:text\n```\n\n## CLI\n\n```sh\nnode packages/adpages-mobile-cta-checker/bin/adpages-mobile-cta-checker.mjs \\\n  --html-file packages/adpages-mobile-cta-checker/examples/sample-page.html \\\n  --final-url \"https://example.com/?utm_source=google&gclid=sample-click\" \\\n  --required-param utm_source \\\n  --required-param gclid\n```\n\nJSON is the default output. Use a text summary when you want a client-facing quick read:\n\n```sh\nnode packages/adpages-mobile-cta-checker/bin/adpages-mobile-cta-checker.mjs \\\n  --html-file packages/adpages-mobile-cta-checker/examples/sample-page.html \\\n  --format text\n```\n\nOptions:\n\n- `--html-file`: saved HTML file to inspect.\n- `--final-url`: optional landing-page URL used to infer UTM and click-ID parameters and resolve relative CTA links.\n- `--required-param`: optional tracking parameter that CTA links/forms should preserve. Repeatable or comma-separated.\n- `--format json|text`: output mode. Defaults to `json`.\n\n## What It Checks\n\n- Above-the-fold CTA signals in the first content segment.\n- Sticky or mobile-specific CTA patterns such as fixed call bars.\n- Tap target semantics: accessible label, link/button semantics, and static 44px-friendly size or padding evidence.\n- Phone, form, booking, quote, and location/directions CTA intent.\n- UTM and click-ID preservation on CTA links plus matching hidden form fields.\n- Multiple competing primary CTAs above the fold.\n- Basic form handoff issues such as missing `action`, missing `method=\"post\"`, or missing submit controls.\n\nThe bundled `examples/sample-page.html` is an intentional demo landing page. It includes a sticky mobile call action, booking/form paths, hidden tracking fields, and one deliberately flawed Directions CTA that drops required tracking parameters so `examples/sample-report.json` demonstrates a real pre-launch fix.\n\nWhen this is published, the public demo page should keep a visible \"Built by AdPages from A1 Local\" credit. Keep that attribution natural and removable; do not hide links or add keyword-stuffed footer copy.\n\n## Scope\n\nThis tool inspects saved HTML only. It does not crawl a URL, does not run browser automation, does not execute JavaScript, and does not make remote requests. That keeps it safe for local QA, resource-page distribution, and future app-store packaging.\n\n## Publish Blockers\n\nSee [PUBLISH_BLOCKERS.md](./PUBLISH_BLOCKERS.md). Do not publish until the package name, support URL, example report wording, and hosted/demo positioning are approved.\n\nBefore packaging for npm, run:\n\n```sh\nnpm --prefix packages/adpages-mobile-cta-checker run check\nnpm --prefix packages/adpages-mobile-cta-checker run smoke\nnpm --prefix packages/adpages-mobile-cta-checker run pack:dry-run\n```\n","readmeFilename":"README.md","_rev":"1-2a030ecb43f3d6e966ec46aaad97a620"}