{"adoption": {"forks": 1199, "observed_at": "2026-08-28T04:09:13.556792+00:00", "stars": 5245}, "canonical_url": "https://ross.abutalabs.com/products/website-downloader", "card": {"archived": false, "artifact_type": "application", "description": "💡  Download the complete source code of any website (including all assets). [ Javascripts, Stylesheets, Images ]  using Node.js  ", "domain": ["web-development", "developer-tools", "crawlers", "self-hosted"], "enriched": true, "function": ["web-scraping", "http-server", "compression", "file-system"], "health_score": 78, "homepage": "https://website-downloader.onrender.com", "language": "HTML", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["AhmadIbrahiim/Website-downloader"], "name": "AhmadIbrahiim/Website-downloader", "platform": ["self-hosted", "cross-platform"], "pushed_at": "2026-08-12T16:37:38+00:00", "repo": "AhmadIbrahiim/Website-downloader", "stars": 5245, "tags": ["website-downloader", "wget-wrapper", "offline-pages", "asset-download", "socket-io", "zip-archive", "nodejs", "web-server"], "topics": ["offline-web-pages", "downloader", "scraper", "assets"], "urls": [], "use_cases": ["download a complete website for offline viewing", "mirror a website including css js and images", "save a copy of a site's source code as a zip", "scrape all assets from a webpage", "create an offline archive of a website", "convert website links for offline browsing"], "what_it_is": "A Node.js web application that downloads the complete source code of any website, including all assets like JavaScripts, stylesheets, and images, by wrapping wget with mirroring flags. It compresses the downloaded site and sends the archive back to the user through a socket channel via a web UI.", "when_to_avoid": ["you need a headless CLI-only scraper without a web interface", "you need JavaScript-rendered content from SPAs (wget only fetches static HTML)", "your environment cannot install wget on the PATH"], "when_to_choose": ["you want a web UI to download full websites with all assets", "you need a self-hosted site-mirroring tool with zip output", "you want wget's mirror behavior wrapped in a friendly interface"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/website-downloader", "repo": "AhmadIbrahiim/Website-downloader", "role": "main", "score": 76}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.556792+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:59:35.418977+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2f693cbe8ea53938a2d2b2254b0c44cc36db797160b69d5be261803773020cee", "fetched_at": "2026-08-28T04:09:13.556792+00:00", "kind": "readme", "missing": false, "url": "https://github.com/AhmadIbrahiim/Website-downloader"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2503, "days_push": 21, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 76, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}