{"adoption": {"forks": 479, "observed_at": "2026-08-28T04:07:41.066844+00:00", "stars": 3058}, "canonical_url": "https://ross.abutalabs.com/products/translate", "card": {"archived": false, "artifact_type": "library", "description": "AI i18n, Two lines of js realize automatic html translation. No need to change the page, no language configuration file, no API key, SEO friendly!", "domain": ["web-development", "frontend"], "enriched": true, "function": ["internationalization", "nlp"], "health_score": 97, "homepage": null, "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["xnx3/translate"], "name": "xnx3/translate", "platform": ["browser"], "pushed_at": "2026-08-26T09:45:03+00:00", "repo": "xnx3/translate", "stars": 3058, "tags": ["translate-js", "html-translation", "machine-translation", "seo-friendly", "client-side-i18n", "language-switching", "localization", "web-server"], "topics": [], "urls": [], "use_cases": ["add multi-language support to an existing website without rewriting pages", "automatically translate html content for international visitors", "let users switch website language with a dropdown selector", "translate dynamically injected dom content", "privately deploy a translation service for intranet or government sites", "avoid maintaining per-language i18n configuration files"], "what_it_is": "translate.js is a JavaScript library that adds automatic HTML page translation with just two lines of code, scanning the DOM and translating text without language configuration files or API keys. It supports hundreds of languages, SEO-friendly operation, caching, and optional private deployment of its translation API service.", "when_to_avoid": ["you need precise, human-reviewed translations of application strings", "your app is a SPA framework where you want build-time i18n tooling like i18next", "you require offline translation without any service endpoint"], "when_to_choose": ["you want instant i18n on an existing static or server-rendered site with minimal code changes", "you have no budget or desire to manage language files and translation keys", "SEO must remain unaffected since crawlers see original source", "you need self-hosted translation for privacy-restricted environments"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/translate", "repo": "xnx3/translate", "role": "main", "score": 88}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "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:07:41.066844+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:41.066844+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:28:48.400032+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9435171cf7365a8ce0963a00930b1f1ccde321a9c3a7d9ed8f663a0e5925c1f0", "fetched_at": "2026-08-28T04:07:41.066844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xnx3/translate"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 94, "rhythm": 69}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1324, "days_push": 7, "days_rel": 204, "gap_med": 29.5, "n_releases_24m": 19}, "score": 88, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}