{"adoption": {"forks": 112, "observed_at": "2026-08-28T04:03:35.130887+00:00", "stars": 1099}, "canonical_url": "https://ross.abutalabs.com/products/tego", "card": {"archived": false, "artifact_type": "framework", "description": "Tego is a pluggable Node.js framework for building customizable development platforms. It enables developers to create their own no-code/low-code systems or event-driven applications, while the core focuses on stability and environment adaptability.", "domain": ["web-development", "developer-tools", "self-hosted"], "enriched": true, "function": ["web-framework", "orm", "workflow-automation", "plugin-system", "form-handling", "api-framework"], "health_score": 99, "homepage": "https://tachybase.org", "language": "TypeScript", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["tegojs/tego"], "name": "tegojs/tego", "platform": ["self-hosted"], "pushed_at": "2026-08-14T09:42:15+00:00", "repo": "tegojs/tego", "stars": 1099, "tags": ["low-code-platform", "no-code", "internal-tools", "admin-dashboard", "crud", "crm", "erp", "approval-workflows", "tachybase-fork", "low-code", "automation", "nodejs", "typescript", "docker", "web-server"], "topics": ["admin-dashboard", "crud", "internal-tools", "nodejs", "self-hosted", "workflows", "approval", "crm", "erp", "low-code", "low-code-development", "low-code-development-platform", "low-code-platform"], "urls": [], "use_cases": ["build a self-hosted low-code platform for internal tools", "create a CRM or ERP system with custom data models", "automate approval workflows over data changes", "build an admin dashboard with drag-and-drop form design", "develop event-driven business applications on Node.js", "spin up a multi-tenant business app with CRUD APIs"], "what_it_is": "Tego is a pluggable Node.js/TypeScript framework for building customizable development platforms, enabling developers to create their own no-code/low-code systems or event-driven applications. It provides a plugin architecture, ORM with transaction management, workflow automation, form design, and multi-tenant support, and is the open-source core behind the TachyBase platform.", "when_to_avoid": ["you need a stable production system right now - the core is undergoing a refactor and the Git version may be unstable", "you just want a ready-made app builder without writing code or plugins", "your stack is not JavaScript/TypeScript or Node.js", "you need a lightweight CRUD backend without platform-building overhead"], "when_to_choose": ["you want to build your own low-code/no-code platform rather than use a turnkey one", "you need a self-hosted, extensible Node.js backend with plugin architecture and workflows", "you need internal tools like CRM/ERP/HRM with customizable data structures", "you want full control over deployment without cloud vendor lock-in"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/tego", "repo": "tegojs/tego", "role": "main", "score": 84}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "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:03:35.130887+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:35.130887+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:46:11.531137+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a31331a2ef7d9ad26991f8602976abba272505a5d2abe064a832e7eabfa80b60", "fetched_at": "2026-08-28T04:03:35.130887+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tegojs/tego"}, {"content_hash": "d0d969169cf38830aa686ddc6a57c604f7ac600cfc3bfe599ceccfbdf7a346bf", "fetched_at": "2026-08-29T12:49:17.867764+00:00", "kind": "homepage", "missing": false, "url": "https://tachybase.org"}, {"content_hash": "3f0831a66546225b0a6047b29ebbf18a416880a4993e33304b9a172d77ddf13f", "fetched_at": "2026-08-29T12:49:17.874882+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/tego"}, {"content_hash": "b161eacc62a32abce7c28b101f6cc8bcfc63d2da1f946575a66aa2cf3c8f9436", "fetched_at": "2026-08-29T12:49:17.870664+00:00", "kind": "site_page", "missing": false, "url": "https://tachybase.org/changelog/changelog.html"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 49, "rhythm": 86}, "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": 687, "days_push": 19, "days_rel": 19, "gap_med": 0, "n_releases_24m": 140}, "score": 84, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}