{"adoption": {"forks": 186, "observed_at": "2026-09-03T02:15:05.423635+00:00", "stars": 1169}, "canonical_url": "https://ross.abutalabs.com/products/ols", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Language server for Odin", "domain": ["developer-tools", "text-editors", "programming-languages"], "enriched": true, "function": ["editor", "formatter", "developer-tools"], "health_score": 100, "homepage": null, "language": "Odin", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["DanielGavin/ols"], "name": "DanielGavin/ols", "platform": ["windows", "cross-platform", "cli"], "pushed_at": "2026-09-02T19:03:54+00:00", "repo": "DanielGavin/ols", "stars": 1169, "tags": ["lsp", "language-server", "odin", "code-completion", "odinfmt", "linux", "macos"], "topics": ["language-server", "odin", "lsp"], "urls": [], "use_cases": ["set up Odin autocomplete in Neovim", "add go-to-definition for Odin code in VS Code", "format Odin source files with odinfmt", "get hover documentation for Odin procedures", "find all references to an Odin symbol", "configure Odin collections and checker profiles for a workspace"], "what_it_is": "ols is a language server (LSP implementation) for the Odin programming language, providing completions, hover, go-to-definition, references, semantic tokens, and formatting via odinfmt. It is written in Odin and tracks the master branch of the Odin compiler.", "when_to_avoid": ["you need a fully stable, mature language server - the project is still in early development", "you don't work with the Odin language", "you rely on features like fake methods that are highly experimental"], "when_to_choose": ["you write Odin and want IDE features in any LSP-capable editor", "you need formatting, completions, and symbol navigation for Odin", "you want a language server that stays current with Odin's master branch"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ols", "repo": "DanielGavin/ols", "role": "main", "score": 100}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-09-03T02:15:05.423635+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:31:36.162555+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "74a96f8117968d1b8c663d2fb705382651370e248eead31482cf4cf97bdeb541", "fetched_at": "2026-09-03T02:15:05.423635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DanielGavin/ols"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 100, "longevity": 100, "rhythm": 100}, "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": 2129, "days_push": 0, "days_rel": 3, "gap_med": 28.0, "n_releases_24m": 11}, "score": 100, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 3, "stale_scrape": false}}