Your Name 2b0459f2d4 Move wappalyzer to JSON, add smart tech upgrading, add upstream sync script
Wappalyzer migration:
- Extract 1,882 header signatures from hardcoded Rust to data/wappalyzer.json
- JSON loaded via include_str! + OnceLock (same pattern as fingerprints)
- wappalyzer_db.rs reduced from 2,717 to 168 lines

Smart technology upgrading:
- Wappalyzer detections now feed back into main classification
- upgrade_kind_from_techs() promotes generic kinds to specific ones:
  Nginx + WordPress headers → WordPress, NodeJs + Next.js → NextJs, etc.
- Only upgrades when detection is more specific (CMS > Framework > Runtime)
- Covers 40+ frameworks/CMS: WordPress, Django, Laravel, Next.js, etc.

Upstream sync:
- scripts/sync_wappalyzer.py fetches latest data from github.com/dochne/wappalyzer
- Converts Wappalyzer format to our JSON format
- Preserves custom signatures not in upstream
- Run: python scripts/sync_wappalyzer.py && cargo build
2026-03-11 23:55:48 +05:30
..