{"adoption": {"forks": 6656, "observed_at": "2026-08-28T04:12:01.194240+00:00", "stars": 36632}, "canonical_url": "https://ross.abutalabs.com/products/typeorm", "card": {"archived": false, "artifact_type": "library", "description": "TypeScript & JavaScript ORM for Node.js — supports PostgreSQL, MySQL, MariaDB, SQLite, SQL Server, Oracle, and more.", "domain": ["databases", "backend", "web-development", "developer-tools"], "enriched": true, "function": ["orm", "database", "database-driver"], "health_score": 100, "homepage": "http://typeorm.io", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["typeorm/typeorm"], "name": "typeorm/typeorm", "platform": ["browser", "cross-platform"], "pushed_at": "2026-08-26T14:27:09+00:00", "repo": "typeorm/typeorm", "stars": 36632, "tags": ["active-record", "data-mapper", "entity-framework-inspired", "migrations", "querybuilder", "multi-database", "migration", "nodejs", "typescript", "javascript", "electron", "mobile"], "topics": ["orm", "typescript", "javascript", "database", "typeorm", "mysql", "mariadb", "postgresql", "sqlite", "sqlserver", "active-record", "data-mapper", "cockroachdb", "hacktoberfest"], "urls": [], "use_cases": ["map TypeScript entities to relational database tables", "manage database schema migrations in a Node.js app", "build complex SQL queries with joins and pagination via a query builder", "use the same ORM across PostgreSQL, MySQL, and SQLite", "model one-to-many and many-to-many relations with eager/lazy loading", "run transactions and connection pooling in an enterprise backend", "use an ORM in React Native or Electron apps"], "what_it_is": "TypeORM is a TypeScript-first object-relational mapper for Node.js and other JavaScript platforms, supporting both Active Record and Data Mapper patterns. It works with PostgreSQL, MySQL/MariaDB, SQLite, SQL Server, Oracle, MongoDB, CockroachDB, SAP HANA, and Google Spanner, and includes migrations, a powerful QueryBuilder, transactions, and relation support.", "when_to_avoid": ["you need a lightweight query builder without entity mapping overhead", "your project targets Node.js versions older than 20", "you prefer Prisma-style schema-first workflows", "you need heavy NoSQL document modeling (MongoDB support is limited)", "you want minimal dependencies or a very small bundle"], "when_to_choose": ["you want type-safe database models in a TypeScript project", "you need broad multi-database support from a single ORM", "you prefer a choice between Active Record and Data Mapper patterns", "you need first-class migrations and schema synchronization", "you're building NestJS or Express backends with relational data"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/typeorm", "repo": "typeorm/typeorm", "role": "main", "score": 93}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "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:12:01.194240+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.194240+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:26:09.840699+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cdc0204c6765c4d5d76ee7465c91934e9b346b931c7c52a2969052080b7aa28d", "fetched_at": "2026-08-28T04:12:01.194240+00:00", "kind": "readme", "missing": false, "url": "https://github.com/typeorm/typeorm"}, {"content_hash": "ac330bc19cda19144208580c58854e3e819297d8e8793ac8af524970f67b25d0", "fetched_at": "2026-08-29T07:47:52.161224+00:00", "kind": "homepage", "missing": false, "url": "http://typeorm.io"}, {"content_hash": "903a3b74919c2da5bbb48e5f54c1bf268594b0f05c9872e108a71c17ae57cbf0", "fetched_at": "2026-08-29T07:47:52.163920+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/release-notes"}, {"content_hash": "8c9a579e1fff4309aa036c0facb9c95a13548f33aa845a7e678479762d18ae74", "fetched_at": "2026-08-29T07:47:52.166513+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/releases/1.0/upgrading-from-0.3"}, {"content_hash": "c5c0f02483cb8eb74499490c9e37216ca10852c2da0afca23688c9282020d66a", "fetched_at": "2026-08-29T07:47:52.169286+00:00", "kind": "site_page", "missing": false, "url": "https://typeorm.io/docs/getting-started"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 81}, "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": 3838, "days_push": 7, "days_rel": 51, "gap_med": 32.5, "n_releases_24m": 13}, "score": 93, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}