{"adoption": {"forks": 351, "observed_at": "2026-08-28T04:07:32.594249+00:00", "stars": 2967}, "canonical_url": "https://ross.abutalabs.com/products/yunohost", "card": {"archived": false, "artifact_type": "application", "description": "YunoHost is an operating system aiming to simplify as much as possible the administration of a server. This repository corresponds to the core code, written mostly in Python and Bash.", "domain": ["self-hosted", "cloud-computing", "web-development"], "enriched": true, "function": ["self-hosted", "deployment", "configuration-management", "web-framework", "auth", "backup", "cli", "developer-tools"], "health_score": 100, "homepage": "https://yunohost.org", "language": "Python", "license": "AGPL-3.0", "license_family": "copyleft", "maturity": "stable", "member_repos": ["YunoHost/yunohost"], "name": "YunoHost/yunohost", "platform": ["self-hosted", "cli", "python"], "pushed_at": "2026-08-26T21:01:46+00:00", "repo": "YunoHost/yunohost", "stars": 2967, "tags": ["server-administration", "operating-system", "app-catalog", "single-sign-on", "web-admin", "debian", "raspberry-pi", "vps", "devops", "automation", "linux", "web-server"], "topics": ["yunohost", "python", "selfhosted", "self-hosted", "self-hosting"], "urls": [], "use_cases": ["self-host my own cloud and file sharing", "host my own email mailboxes on a VPS", "install web apps with one click on a Raspberry Pi", "manage a server without deep Linux knowledge", "set up single sign-on for self-hosted apps", "run a personal wiki, blog, or forum for my association", "automate backups of my self-hosted services", "host a team chat and Nextcloud for a small organization"], "what_it_is": "YunoHost is an operating system (built on Debian) that simplifies server administration and self-hosting of web applications. This repository contains the core code, written mostly in Python and Bash, powering the web admin, single sign-on portal, and app management system.", "when_to_avoid": ["you need fine-grained manual control over every service configuration", "you run a large-scale production infrastructure requiring orchestration tools like Kubernetes", "you only need a single specific app and prefer installing it directly"], "when_to_choose": ["you want to self-host multiple apps on a VPS, old PC, or ARM board with minimal sysadmin effort", "you need a friendly web admin panel, SSO portal, and app catalog out of the box", "you are a beginner or small organization wanting to control your own digital services"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/yunohost", "repo": "YunoHost/yunohost", "role": "main", "score": 94}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "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:32.594249+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:32.594249+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:47:29.275188+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7775561a4e30376484f47ceb33bb0f285a9b1659dff7f19455757aac6f9e2d84", "fetched_at": "2026-08-28T04:07:32.594249+00:00", "kind": "readme", "missing": false, "url": "https://github.com/YunoHost/yunohost"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.054560+00:00", "kind": "homepage", "missing": false, "url": "https://yunohost.org"}, {"content_hash": "bfb25243a5757046019d22443320ab738deda2f486d6b0f40fd51bc207fa74e0", "fetched_at": "2026-08-29T09:47:18.067654+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org/install"}, {"content_hash": "fc7b111bf7beeb2bbd92e1e8e83ba16d343cd9aae6071c742de277da2c37938f", "fetched_at": "2026-08-29T09:47:18.063753+00:00", "kind": "site_page", "missing": false, "url": "https://yunohost.org/index.en.html"}, {"content_hash": "74bb24779428383278e6282ce08d9c544d2bda01d3324ecdadec19286e08ee0c", "fetched_at": "2026-08-29T09:47:18.065804+00:00", "kind": "site_page", "missing": false, "url": "https://doc.yunohost.org"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 84}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4492, "days_push": 7, "days_rel": 105, "gap_med": 2.5, "n_releases_24m": 43}, "score": 94, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}