{"adoption": {"forks": 58, "observed_at": "2026-09-01T02:14:04.034186+00:00", "stars": 1069}, "canonical_url": "https://ross.abutalabs.com/products/nametag", "card": {"archived": false, "artifact_type": "application", "description": "A simple, yet effective Personal Relationship Manager", "domain": ["developer-tools", "self-hosted", "web-development", "privacy"], "enriched": true, "function": ["search-engine", "web-framework", "api-framework", "auth", "data-visualization", "scheduling", "self-hosted"], "health_score": 100, "homepage": null, "language": "TypeScript", "license": "AGPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["mattogodoy/nametag"], "name": "mattogodoy/nametag", "platform": ["self-hosted", "cross-platform"], "pushed_at": "2026-08-31T22:27:12+00:00", "repo": "mattogodoy/nametag", "stars": 1069, "tags": ["personal-crm", "relationship-manager", "contacts", "carddav", "pwa", "network-graph", "reminders", "journal", "docker", "web-server"], "topics": [], "urls": [], "use_cases": ["manage personal contacts and relationships", "remember friends' birthdays and important dates", "visualize my social network as a graph", "sync Google Contacts and iCloud contacts via CardDAV", "self-host a private CRM alternative to Monica", "keep a journal of interactions with people", "set reminders to stay in touch with family and friends"], "what_it_is": "Nametag is a self-hostable personal relationship manager (PRM) for tracking people, birthdays, relationships, and interactions. It offers interactive network graphs, CardDAV sync, reminders, a journal, and a REST API with OpenAPI docs.", "when_to_avoid": ["you need a business/sales CRM with pipelines and deals", "you want a fully stable product with no breaking changes", "you prefer a mobile-native app over a web PWA"], "when_to_choose": ["you want a self-hosted, privacy-friendly personal CRM", "you need CardDAV sync with existing contact providers", "you want relationship mapping with visual network graphs", "you need an API to integrate contacts with other tools"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/nametag", "repo": "mattogodoy/nametag", "role": "main", "score": 79}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "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-01T02:14:04.034186+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-09-01T02:14:04.034186+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:54:44.238784+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7eaeb08d28beb1ed617d3f6124482df38ef6da388d30174667e2f8e2e8a9ccfc", "fetched_at": "2026-09-01T02:14:04.034186+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mattogodoy/nametag"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 100, "longevity": 19, "rhythm": 87}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 274, "days_push": 2, "days_rel": 7, "gap_med": 0.0, "n_releases_24m": 133}, "score": 79, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 5, "stale_scrape": false}}