{"adoption": {"forks": 62, "observed_at": "2026-08-28T04:05:41.588848+00:00", "stars": 1828}, "canonical_url": "https://ross.abutalabs.com/products/andymatuschak-orbit", "card": {"archived": false, "artifact_type": "application", "description": "Experimental spaced repetition platform for exploring ideas in memory augmentation and programmable attention", "domain": ["education", "developer-tools", "web-development", "self-hosted"], "enriched": true, "function": ["web-framework", "api-framework", "http-server", "http-client", "sdk", "ui-components", "scheduling"], "health_score": 20, "homepage": "https://withorbit.com", "language": "TypeScript", "license": "NOASSERTION", "license_family": "other", "maturity": "experimental", "member_repos": ["andymatuschak/orbit"], "name": "andymatuschak/orbit", "platform": ["browser", "cross-platform"], "pushed_at": "2024-10-14T03:25:14+00:00", "repo": "andymatuschak/orbit", "stars": 1828, "tags": ["spaced-repetition", "mnemonic-medium", "memory-augmentation", "research-platform", "monorepo", "react-native", "bun", "natural-language-processing", "web-server", "nodejs", "mobile", "typescript"], "topics": ["spaced-repetition", "research-platform", "mnemonic-medium", "memory-augmentation"], "urls": [], "use_cases": ["embed spaced repetition review prompts into online textbooks and articles", "remember key details from what I read without manual flashcard creation", "build a connected cloud-based alternative to Anki", "sync review schedules across web, mobile, and desktop apps", "experiment with programmable attention and memory augmentation research", "ingest review tasks from around the web via APIs or embedded iframes"], "what_it_is": "Orbit is an experimental spaced repetition platform for publishing small review tasks embedded in texts (the mnemonic medium) and engaging with them over time. It is a TypeScript monorepo spanning client apps (web, mobile, desktop), a backend sync service, and reusable core libraries, primarily serving as a research vehicle for memory augmentation.", "when_to_avoid": ["you just want a polished, turnkey flashcard app for personal study (use Anki instead)", "you need a stable, feature-complete product with support guarantees", "you can't accept AGPL/BUSL licensing on the app and backend components", "you want a self-contained offline tool rather than a connected cloud service"], "when_to_choose": ["you're an author wanting to embed review questions in educational texts like Quantum Country", "you're researching spaced repetition, memory augmentation, or programmable attention", "you want a cloud-synced, multi-platform SRS rather than local flashcard files", "you need reusable TypeScript libraries for task scheduling and data sync"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/andymatuschak-orbit", "repo": "andymatuschak/orbit", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "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:41.588848+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:41.588848+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:19:23.807503+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8a4dbbe7de079064ee7815943e509bdb5205863690029d442405bad968c68a22", "fetched_at": "2026-08-28T04:05:41.588848+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andymatuschak/orbit"}, {"content_hash": "eef99b60dfdf46fe736f31f60dff5525dc6e264f43f0287c57705bded0220a15", "fetched_at": "2026-08-29T10:58:19.060755+00:00", "kind": "homepage", "missing": false, "url": "https://withorbit.com"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2353, "days_push": 688, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}