{"adoption": {"forks": 736, "observed_at": "2026-08-28T04:05:45.257183+00:00", "stars": 1859}, "canonical_url": "https://ross.abutalabs.com/products/edusoho", "card": {"archived": false, "artifact_type": "application", "description": "EduSoho 网络课堂是由杭州阔知网络科技有限公司研发的开源网校系统。EduSoho 包含了在线教学、招生和管理等完整功能，让教育机构可以零门槛建立网校，成功转型在线教育。EduSoho 也可作为企业内训平台，帮助企业实现人才培养。", "domain": ["education", "web-development", "self-hosted", "e-commerce"], "enriched": true, "function": ["web-framework", "gui", "chat-interface", "analytics", "workflow-automation"], "health_score": 69, "homepage": "http://www.edusoho.com", "language": "PHP", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["edusoho/edusoho"], "name": "edusoho/edusoho", "platform": ["self-hosted", "php", "cross-platform"], "pushed_at": "2026-02-20T20:43:33+00:00", "repo": "edusoho/edusoho", "stars": 1859, "tags": ["lms", "online-school", "e-learning", "live-streaming", "exam-system", "corporate-training", "wechat-integration", "mini-program", "web-server", "android", "ios"], "topics": [], "urls": [], "use_cases": ["build an online school for a training institution", "launch a corporate internal training platform", "sell courses online with payments and marketing tools", "run live and recorded classes with quizzes and exams", "manage students, orders, and course data", "create a WeChat-based micro school or mini-program"], "what_it_is": "EduSoho is an open-source online school (LMS) system written in PHP that provides complete online teaching, enrollment, and management features for education institutions and corporate training. It supports live and recorded lessons, automated exams, marketing tools, and multi-platform delivery via PC web, mobile apps, WeChat, and mini-programs.", "when_to_avoid": ["you need a lightweight course plugin inside an existing CMS rather than a full platform", "you require a permissive open-source license for commercial redistribution (custom EduSoho license applies)", "your stack is not PHP-based and you want deep custom integration"], "when_to_choose": ["you need a self-hosted LMS with teaching, exams, and enrollment built in", "you are an education institution moving training online with minimal technical effort", "you want WeChat, mobile app, and PC delivery from one system"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/edusoho", "repo": "edusoho/edusoho", "role": "main", "score": 53}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "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:05:45.257183+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:45.257183+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:16:00.203367+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fde05a6ddb350724c84e4bfc652f990a1730372c26e073db5bec91e5f5f577cb", "fetched_at": "2026-08-28T04:05:45.257183+00:00", "kind": "readme", "missing": false, "url": "https://github.com/edusoho/edusoho"}, {"content_hash": "b71af79a384c96e938d19cde08b9d15d0876321b84fcd7ae7dc7ac2b9336fbba", "fetched_at": "2026-08-29T10:55:17.773592+00:00", "kind": "homepage", "missing": false, "url": "http://www.edusoho.com"}, {"content_hash": "6d5d55b6e24d7dfe7e4c118f6fd8472f6a4f414d5b77cb076e013567d04e43d6", "fetched_at": "2026-08-29T10:55:17.776339+00:00", "kind": "site_page", "missing": false, "url": "http://www.edusoho.com/abouts/company"}, {"content_hash": "0564464cec54e67cd5edac9b9ca05583f491e254b16272d56599d627554be116", "fetched_at": "2026-08-29T10:55:17.778276+00:00", "kind": "site_page", "missing": false, "url": "https://www.edusoho.com/abouts/joinus"}, {"content_hash": "b50c223ebd908e2c3ba077b4d07901bec59d1fe20a4523de16c37a6701a92930", "fetched_at": "2026-08-29T10:55:17.780684+00:00", "kind": "site_page", "missing": false, "url": "https://demo.edusoho.com/changelog/list"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 68, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4698, "days_push": 194, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 53, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}