{"adoption": {"forks": 107, "observed_at": "2026-08-28T04:05:30.802189+00:00", "stars": 1746}, "canonical_url": "https://ross.abutalabs.com/products/jidoujisho", "card": {"archived": false, "artifact_type": "application", "description": "A full-featured immersion language learning suite for mobile.", "domain": ["education", "mobile-development"], "enriched": true, "function": ["video-processing", "nlp", "search-engine", "gui"], "health_score": 64, "homepage": null, "language": "Dart", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["arianneorpilla/jidoujisho"], "name": "arianneorpilla/jidoujisho", "platform": ["cross-platform"], "pushed_at": "2025-10-20T11:27:17+00:00", "repo": "arianneorpilla/jidoujisho", "stars": 1746, "tags": ["language-learning", "japanese", "anki", "immersion", "epub-reader", "youtube-player", "dictionary", "flashcards", "flutter-app", "natural-language-processing", "localization", "android", "flutter", "mobile"], "topics": ["japanese-language", "japanese", "japanese-study", "japanese-dictionary", "android-application", "flutter", "dart", "ankidroid", "japanese-language-learners", "android", "video", "video-player", "reader", "epub-reader", "youtube", "english", "english-dictionary", "english-language", "english-learning", "english-study"], "urls": [], "use_cases": ["learn japanese through immersion on android", "mine sentences from youtube videos into anki flashcards", "read epub books with a built-in japanese dictionary", "look up japanese words while watching video", "create ankidroid flashcards from media content", "study english or japanese vocabulary on mobile", "watch videos with subtitle-based dictionary lookups"], "what_it_is": "jidoujisho is a full-featured immersion language learning suite for mobile, built with Flutter for Android. It combines media viewing (video, YouTube, EPUB reader) with dictionary lookups and AnkiDroid flashcard creation for language learners.", "when_to_avoid": ["you need an ios app - it targets android", "you want a desktop or browser-based dictionary tool", "you need languages beyond japanese and english"], "when_to_choose": ["you want an all-in-one immersion and flashcard-mining app on android", "you use ankidroid and want seamless card creation from media", "you need a mobile yomitan-like experience for japanese learning"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/jidoujisho", "repo": "arianneorpilla/jidoujisho", "role": "main", "score": 49}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "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:30.802189+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.802189+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:29:11.489267+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eb0b70dd8545ebc469f58940d9f8a0c68fbefad6d27d79034c7b5748c722742", "fetched_at": "2026-08-28T04:05:30.802189+00:00", "kind": "readme", "missing": false, "url": "https://github.com/arianneorpilla/jidoujisho"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 48, "longevity": 100, "rhythm": 21}, "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": 2040, "days_push": 317, "days_rel": 317, "gap_med": 358, "n_releases_24m": 2}, "score": 49, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}