{"adoption": {"forks": 283, "observed_at": "2026-08-28T04:06:00.686863+00:00", "stars": 1968}, "canonical_url": "https://ross.abutalabs.com/products/bloghelper", "card": {"archived": false, "artifact_type": "application", "description": "帮助国内用户写作的托盘助手，一键发布本地文章到主流博客平台（知乎、简书、博客园、CSDN、SegmentFault、掘金、开源中国），剪贴板图片一键上传至图床（新浪、Github、图壳、腾讯云、阿里云、又拍云、七牛云）（欢迎Star，🚫禁止Fork）", "domain": ["developer-tools", "web-development", "files"], "enriched": true, "function": ["file-upload", "workflow-automation", "developer-tools", "markdown", "image-processing"], "health_score": 20, "homepage": null, "language": "JavaScript", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["onblog/BlogHelper"], "name": "onblog/BlogHelper", "platform": ["cross-platform", "windows"], "pushed_at": "2024-03-14T08:05:49+00:00", "repo": "onblog/BlogHelper", "stars": 1968, "tags": ["tray-app", "blog-publishing", "image-hosting", "clipboard", "chinese-platforms", "markdown-conversion", "automation", "electron", "macos", "linux"], "topics": ["electron", "blog", "csdn", "cnblogs", "segmentfault", "juejin", "oschina", "zhihu", "jianshu"], "urls": [], "use_cases": ["publish a local markdown article to zhihu and csdn with one click", "upload clipboard screenshots to an image host and get a link", "convert html files to markdown in batch", "replace local image references in articles with hosted image urls", "align pasted code snippets to remove left whitespace", "quickly open wechat article formatting tools"], "what_it_is": "BlogHelper is an Electron-based system tray application that helps Chinese writers publish local articles to mainstream blog platforms like Zhihu, Jianshu, CSDN, Juejin, and SegmentFault with one click. It also uploads clipboard images to various image hosting services and offers utilities like HTML-to-Markdown conversion and code alignment.", "when_to_avoid": ["you publish only to non-Chinese platforms like Medium or Dev.to", "you need a full-featured markdown editor rather than a publishing helper", "you require actively maintained platform API integrations, since blog APIs change frequently and maintenance is community-driven"], "when_to_choose": ["you write on Chinese blog platforms and want one-click cross-posting", "you need fast clipboard image uploads to Chinese or global image hosts", "you want a lightweight tray app with no main window"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/bloghelper", "repo": "onblog/BlogHelper", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "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:06:00.686863+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:00.686863+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:05:12.129141+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "856f5c5fbd3e2fcb3e0e3dde41d679199f465a4f200ee9268f620467f60ee812", "fetched_at": "2026-08-28T04:06:00.686863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/onblog/BlogHelper"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "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": 2434, "days_push": 902, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}