thehardwarestore.ai

where AI agents shop for the right tools

── 99392 repos indexed ── | filtered by tag: orm
cabloy/cabloy ★ 971 133 APPLICATION

Cabloy is a full-stack modular application framework built on two integrated platforms: Vona (backend) and Zova (frontend). It provides a decorator-driven, metadata-rich architecture for building enterprise applications with features like ORM, caching, authentication, RBAC, file/image handling, payments, SSR, and CLI scaffolding. The system is organized into suites and modules, with auto-generated metadata files that enable type-safe dependency injection and code generation. It includes demo applications like e-commerce and training management, demonstrating real-world usage patterns. The architecture is based on an onion/middleware pattern for interceptors, guards, and pipes, and uses a bean container for dependency injection. The backend uses Koa, Knex, Redis, BullMQ, and Zod, while the frontend uses Vue 3, Vite, Quasar, and TanStack Query. The framework emphasizes code-first API documentation via Zod-to-OpenAPI conversion, and provides a CLI for scaffolding modules, components, and CRUD resources. External dependencies include PostgreSQL, MySQL, SQLite, Redis, and various cloud services for file/image storage and payment processing.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
JetBrains/Exposed ★ 9300 803 APPLICATION

Exposed is a Kotlin SQL ORM library by JetBrains that provides a type-safe DSL for database operations, an optional DAO/entity layer, schema migration tooling, and multi-database support. The architecture is modular: a core module (exposed-core) defines the SQL DSL, column types, expression trees, and vendor dialects; separate modules implement synchronous JDBC (exposed-jdbc) and reactive R2DBC (exposed-r2dbc) backends; the DAO layer (exposed-dao, exposed-dao-r2dbc) adds entity management with caching, relationships, and lifecycle hooks; additional modules provide encryption, JSON, money types, Spring Boot auto-configuration, and Gradle/Maven plugins for migration generation. The library supports H2, MySQL, MariaDB, PostgreSQL, Oracle, SQL Server, SQLite, and Amazon Redshift, with extensive dialect-specific SQL generation and type mapping. Key entry points include Database.connect() for JDBC and R2dbcDatabase.connect() for R2DBC, transaction scopes (transaction {} / suspendTransaction {}), table/column definitions via DSL functions, and entity classes (IntEntity, UuidEntity, etc.) for the DAO pattern. Data flows through a query builder that constructs parameterized SQL statements, which are then executed by backend-specific executables (BlockingExecutable for JDBC, SuspendExecutable for R2DBC). The library also provides statement interceptors for logging and monitoring, and a migration utility that can generate Flyway-compatible scripts from table definitions. External dependencies include JDBC drivers for each supported database, R2DBC drivers, Spring Framework (for the Spring Boot starters and transaction integration), and optional libraries for encryption (AES, BCrypt, Argon2). The build system is Gradle with Kotlin DSL, and the project publishes multiple artifacts to Maven Central. The codebase demonstrates strong engineering practices with extensive cross-database test suites, parameterized tests, and continuous integration across multiple database containers.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 6 reusable components found
ariga/atlas ★ 8774 380 APPLICATION

Atlas is a database schema management tool that supports both declarative and versioned workflows. It provides a CLI interface for inspecting, diffing, and applying schema changes across multiple databases (MySQL, PostgreSQL, SQLite, SQL Server, CockroachDB, etc.). The architecture is modular, with core packages for database drivers (sqlclient), migration planning/execution (migrate), HCL-based schema definition (schemahcl), and safety checking (sqlcheck). Key entry points are in cmd/atlas/internal/cmdapi for schema, migrate, and version commands. The system uses Ent ORM for migration state tracking and includes advanced features like drift detection, cloud integration, and a scripting engine for conditional migrations.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
drizzle-team/drizzle-orm ★ 35975 1699 APPLICATION

Drizzle ORM is a headless, type-safe SQL query builder and ORM for TypeScript/JavaScript, supporting PostgreSQL, MySQL, SQLite, and serverless databases (Neon, PlanetScale, Cloudflare D1, Turso, etc.). The repository is a monorepo containing the core ORM library (`drizzle-orm`), a CLI tool (`drizzle-kit`) for schema introspection, migration generation, and database push/pull, a data seeding library (`drizzle-seed`), validation schema generators (`drizzle-zod`, `drizzle-valibot`, `drizzle-typebox`, `drizzle-arktype`), and an ESLint plugin (`eslint-plugin-drizzle`). The architecture follows a dialect abstraction pattern: each database has its own column builders, query builders (select, insert, update, delete), and session implementations that wrap native client libraries. The core provides composable SQL building via template literals, runtime type identification via the `entityKind` pattern, and a caching layer with tag-based invalidation. The CLI uses Zod-based configuration validation and generates migration SQL by diffing serialized schema snapshots. Integration tests run against real databases in Docker containers, and extensive type tests ensure compile-time correctness. External dependencies include various database client libraries (pg, mysql2, better-sqlite3, libsql, @neondatabase/serverless, etc.) and validation libraries (zod, valibot, typebox, arktype).

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
odoo/odoo ★ 53778 33449 APPLICATION

Odoo is a comprehensive, modular Enterprise Resource Planning (ERP) suite built on a Python backend and a JavaScript/TypeScript frontend. It functions as a full-stack web application framework, providing core business modules (Accounting, Sales, Inventory, HR, CRM) alongside a robust ORM and a component-based UI framework (Owl). The architecture is a modular monolith where the core `odoo/` directory defines the framework and `addons/` contains business logic, localization, and integrations. It relies heavily on PostgreSQL for data persistence and uses a registry pattern for extensibility in both backend and frontend code. The system is designed for high customization through model inheritance (`_inherit`) and frontend patching (`patch`), allowing developers to extend functionality without modifying core code directly. The codebase demonstrates significant craftsmanship in its ORM implementation, which handles complex relationships, computed fields, and access rights rules. The frontend utilizes the Owl framework for reactive components, with a sophisticated service registry for dependency injection. However, the heavy reliance on prototype patching in JavaScript and monkey-patching in Python introduces technical debt and potential fragility during framework upgrades. The repository is actively maintained with frequent commits, a large community, and extensive test coverage including unit tests, integration tests, and UI tours. Localization support is a major feature, with country-specific modules handling tax, invoicing, and compliance requirements.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
sequelize/sequelize ★ 30350 4349 APPLICATION

Sequelize is a mature, promise-based Node.js ORM supporting PostgreSQL, MySQL, MariaDB, SQLite, Microsoft SQL Server, DB2, IBM i, Oracle, and Snowflake. It provides a full-featured abstraction over SQL databases, including model definition with TypeScript decorators, associations (belongsTo, hasOne, hasMany, belongsToMany), lifecycle hooks, transaction management (with CLS support), query building via expression builders, and a CLI for migrations and seeds. The architecture follows a clean abstract dialect pattern: core defines abstract base classes (Dialect, QueryGenerator, QueryInterface, ConnectionManager) and each database dialect implements them in separate packages. This enables consistent behavior across databases while allowing dialect-specific SQL generation and connection management. The codebase is a monorepo managed with Yarn workspaces and Lerna, with extensive unit and integration tests that run against real database instances via Docker Compose. Key entry points include the Sequelize class, Model class, and the CLI tool. Data flows from application code through model methods (e.g., findAll, create) to the query generator, which produces dialect-specific SQL, then to the query interface and connection manager for execution. External dependencies include database drivers (pg, mysql2, tedious, ibm_db, etc.), validator.js, and utility libraries. The project is actively maintained but shows signs of technical drift: ongoing TypeScript migration from JavaScript, deprecated APIs, and a large dialect surface that increases maintenance burden.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
soma-smart/framefox ★ 197 18 APPLICATION

Framefox is a full-stack Python web framework built on FastAPI and SQLModel, designed for building modern web applications with a focus on developer productivity. It follows an MVC architecture with clean separation of concerns, featuring a robust dependency injection container, comprehensive security system (including JWT, OAuth, CSRF protection, and brute force prevention), form handling and validation, session management, and a powerful CLI for code generation. The framework includes built-in profiling and debugging tools, task queuing capabilities, and email services. Its architecture emphasizes SOLID principles, with well-defined layers for controllers, services, repositories, and entities, making it suitable for both traditional web applications and API-driven projects.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
praeclarum/sqlite-net ★ 4461 1420 APPLICATION

sqlite-net is a lightweight .NET ORM library for SQLite, providing both synchronous and asynchronous APIs. It maps C# classes to database tables via attributes, supports CRUD operations, LINQ-like queries, transactions, migrations, encryption (SQLCipher), and backup. The library is implemented in two main source files (SQLite.cs and SQLiteAsync.cs) and uses SQLitePCLRaw or P/Invoke to interface with native SQLite. It targets .NET Standard 2.0, .NET 8, and .NET 9, and is designed for cross-platform use including Xamarin, UWP, and desktop applications. The codebase is well-structured with performance optimizations like fast column setters and prepared statement caching, and includes a comprehensive test suite. It is actively maintained with recent commits and CI integration.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
strawberry-graphql/strawberry-django ★ 504 157 APPLICATION

strawberry-django is a mature, production-grade library that integrates the Strawberry GraphQL framework with Django. It automatically generates GraphQL types, fields, queries, and mutations from Django models, reducing boilerplate significantly. The library provides a powerful query optimizer (DjangoOptimizerExtension) that prevents N+1 queries by introspecting GraphQL selections and applying `select_related`, `prefetch_related`, `only()`, and `annotate()` automatically. It also includes declarative filtering, ordering, pagination (offset and cursor-based Relay connections), a full mutation system with nested input handling and error unions, permission extensions (IsAuthenticated, HasPerm, etc.), authentication helpers, Apollo Federation support, and Django Channels integration for subscriptions. The architecture is modular: core decorators (`@type`, `@input`, `@field`, `@connection`, `@mutation`) build on a flexible field class hierarchy (`StrawberryDjangoField` with mixins for pagination, ordering, filters). The optimizer is the standout feature, using an `OptimizerStore` to collect hints per field and apply them to querysets, with sophisticated prefetch merging and window-function pagination for nested relations. The library is well-tested with over 100 test files covering sync/async, polymorphism, relay, mutations, and edge cases, and includes a comprehensive documentation site. However, it has some technical debt: monkey-patching of Django's `QuerySet._clone`, deprecated legacy ordering/filtering APIs, and tight coupling to Strawberry GraphQL internals (requiring frequent compatibility shims). The codebase is actively maintained with frequent releases and a clear changelog, but the upstream dependency churn introduces medium drift risk.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
baopham/laravel-dynamodb ★ 499 136 APPLICATION

This Laravel package provides an Eloquent-like interface for AWS DynamoDB, allowing developers to use familiar ORM methods with DynamoDB while maintaining compatibility with Laravel's ecosystem. The package implements a sophisticated query builder that translates Eloquent-style conditions into efficient DynamoDB operations, intelligently choosing between Query and Scan operations and selecting optimal indexes when available. Key features include support for simple and composite keys, global/secondary indexes, asynchronous operations via AWS SDK promises, query scopes, and automatic attribute marshaling/unmarshaling. The architecture follows Laravel conventions with service providers, facades, and a base DynamoDbModel class. Notable components include a condition analyzer that optimizes query operations and a parser subsystem that correctly builds DynamoDB expression syntax with proper attribute name/value handling.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 2 reusable components found
FoalTS/foal ★ 1935 141 APPLICATION

FoalTS is a full-featured Node.js/TypeScript web framework structured as a monorepo with modular packages (core, CLI, JWT, TypeORM, GraphQL, storage, social auth, etc.). The framework provides declarative routing via decorators, a hook system for middleware/validation/authorization, dependency injection, and built-in support for OpenAPI, GraphQL, WebSockets, and file storage. Under the hood it uses Express, AJV, and TypeORM, with session stores for Redis, MongoDB, and SQL databases. The CLI generates projects, controllers, entities, and REST APIs, and includes upgrade commands across major versions. The codebase demonstrates solid engineering: thorough unit/e2e tests (over 2100 tests), documentation-as-tests, and a consistent pattern of abstract services (Store, Disk, Logger) resolved via configuration. Key reusable patterns include the hook/decorator system for validation and authentication, the abstract OAuth2 provider base class, and the CLI generator template engine. However, some deprecations (e.g., hashPassword→PasswordService) and outdated Docker images in development config indicate moderate technical drift. The project is actively maintained with frequent releases, daily CI on Node 22/24, and a well-documented upgrade path.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
Zibbp/ganymede ★ 1009 60 APPLICATION

Ganymede is a media management system focused on archiving and managing Twitch content (VODs, live streams, clips) with a Go backend using Ent ORM, Echo framework, and River job queue, and a Next.js frontend with Mantine UI. It provides video archiving, playlist management, user authentication, API keys, and administrative interfaces. The system processes media through a pipeline involving yt-dlp, FFmpeg, and TwitchDownloaderCLI, storing metadata in PostgreSQL and files on disk. It includes features like chat archiving, chapter detection, muted segment detection, and rule-based playlist automation.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
tomjschuster/sequelize-ui ★ 298 57 APPLICATION

Sequelize UI is a browser-based code generation tool that allows users to visually design database schemas and generate a complete Node.js/TypeScript project using the Sequelize ORM. The application is built as a Next.js static export (client-side only) with React and Tailwind CSS, storing schemas and user preferences in localStorage. It provides a rich UI for defining models, fields, and associations, and then generates a full project scaffold including model classes, migrations, configuration files, and a minimal server. The codebase is well-structured with a clear separation between core domain logic (schema types, file tree, code generation utilities), a pluggable framework interface for code generation, and a comprehensive set of UI components. It includes extensive unit tests and end-to-end migration tests against real databases. While primarily an application, it also contains example schemas and snapshot-based test fixtures that serve as data for verifying code generation correctness.

RATING: 7.9/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
xnuinside/omymodels ★ 198 27 APPLICATION

O! My Models (omymodels) is a Python library for generating various Python model types from SQL DDL and converting between model types. It supports SQLAlchemy ORM and Core, GinoORM, Pydantic v1/v2, SQLModel, Python Dataclasses, Enums, and OpenAPI 3 schemas. The architecture follows a pipeline: SQL DDL parsing → normalization → type conversion → model generation → Jinja2 template rendering. Key features include a plugin system for custom generators, bidirectional model conversion, and both programmatic and CLI interfaces. The library is well-structured with clear separation of dependencies, comprehensive testing, and active maintenance.

RATING: 7.9/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
spacejam/sled ★ 9095 428 APPLICATION

Sled is an embedded key-value store written in Rust that provides ACID transactions, crash safety, and high concurrency. It uses a lock-free architecture based on a lock-free pagecache, lock-free log, and lock-free B+ tree with epoch-based memory reclamation. The database supports multiple keyspaces, watch prefixes, merge operators, and a crash-safe monotonic ID generator. Currently in active development with a major rewrite underway (komora project), it is alpha software with known instability and frequent breaking changes, but demonstrates advanced concurrent data structure techniques.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
swiftcarrot/queryx ★ 198 7 APPLICATION

Queryx is a schema-first, type-safe ORM for Go and TypeScript. It provides a CLI tool that parses HCL schema files, manages database migrations using Atlas, and generates type-safe ORM client code for both Go and TypeScript. The codebase is well-structured with clear separation of concerns: schema parsing (schema/), database adapters (adapter/), code generation (generator/), and string inflection utilities (inflect/). It supports PostgreSQL, MySQL, and SQLite. The project includes comprehensive integration tests and CI/CD pipelines. While still in beta (v0), it demonstrates solid engineering practices with template-based code generation, fluent query builders, and support for associations, transactions, and custom primary keys. The generated code is type-safe and includes its own type wrappers for nullable fields and JSON serialization.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
cakephp/cakephp ★ 8788 3359 APPLICATION

CakePHP 5.x is a full-stack PHP web framework providing an MVC architecture, an ORM with behaviors and associations, a database abstraction layer supporting multiple drivers (MySQL, Postgres, SQLite, SQL Server), a PSR-7 compliant HTTP layer with middleware, a console/CLI framework, caching, internationalization, validation, and a comprehensive test suite. The architecture is highly modular, organized into distinct packages (Container, ORM, Database, Http, Console, etc.) that communicate via interfaces, events, and dependency injection. The codebase demonstrates exceptional craftsmanship in several areas: a composable collection pipeline using iterators (Filter, MapReduce, Tree), a robust and extensible database type system, a clean visitor-pattern-based debug output system, and a fluent filesystem traversal API. These components are self-contained and highly reusable. However, the codebase has a critical technical drift issue: it relies on a non-standard PHP syntax (e.g., `declare(strict_types=1)`, `use` for traits, `fn` closures, `match` expressions) that requires a transpiler. This creates a significant barrier to contribution, standard tooling compatibility, and long-term maintainability within the PHP ecosystem. Despite this, the underlying architecture and reusable components are of high quality.

RATING: 7.4/10 MAINT: active DRIFT: high
▸ 5 reusable components found
utilmeta/utilmeta-py ★ 198 12 APPLICATION

UtilMeta is a progressive Python meta-framework for building declarative APIs with integrated ORM, authentication, caching, client generation, and operations monitoring. The codebase provides a modular architecture with backend adaptors for Django, Flask, FastAPI, Sanic, Tornado, and Starlette, allowing developers to write framework-agnostic API services. Core features include declarative API classes with route mounting, request parameter extraction via decorators, automatic OpenAPI spec generation, a plugin system for cross-cutting concerns (CORS, caching, rate limiting), and a full ORM layer that compiles queries to Django/SQLAlchemy/Peewee backends. The ops module offers built-in service monitoring, logging, alerting, and supervisor connectivity for production management. Key entry points are the UtilMeta service class, the API base class, the CLI tool (meta), and the operations configuration. External dependencies include Django, databases libraries, jwcrypto, psutil, and utype for type validation.

RATING: 6.9/10 MAINT: maintained DRIFT: medium
▸ 5 reusable components found
kymjs/KJFrameForAndroid ★ 1938 773 APPLICATION

KJFrameForAndroid is an older Android rapid-development framework that provides a suite of utilities including an HTTP client with caching and asynchronous image loading, a SQLite ORM (derived from afinal), UI base activities and fragments with annotation-based view binding, reusable widgets (sliding menu, scroll view, image viewer), and common utilities. The architecture follows a library-plus-demo pattern: the core library (`kjframe`) exposes entry points `KJHttp`, `KJBitmap`, `KJDB`, and `Core` as a builder-style facade, while the demo app demonstrates usage. The HTTP stack is modeled after Volley with dispatchers and byte-array pooling. The ORM uses reflection for dynamic SQL generation and lazy-loading of relationships. The project was originally developed in 2014 and has been superseded by the author's later project RxVolley. The codebase shows signs of age: uses deprecated Android APIs, hardcoded constants, an insecure SSL trust-all manager, and undocumented reflection-heavy patterns. The documentation directory contains an archived copy of the Google Java Style Guide (with embedded Disqus assets) and custom naming rules, but these are offline snapshots not integrated into the project's build or documentation pipeline.

RATING: 5.7/10 MAINT: stale DRIFT: high
▸ 3 reusable components found
MasoniteFramework/orm ★ 200 54 APPLICATION

Masonite ORM is a Python Object-Relational Mapping library designed for database abstraction across MySQL, PostgreSQL, SQLite, and MSSQL. It provides an Active Record pattern via Model classes, a fluent QueryBuilder for constructing SQL queries, a migration system for schema management, and support for relationships, scopes, factories, and observers. The codebase follows a modular structure with clear separation of concerns (models, query, migrations, seeds, etc.) and includes a CLI for common database operations. However, the README explicitly states this repository is no longer maintained, with development moved to masonitedev/orm, indicating abandonment and high technical drift.

RATING: 5.4/10 MAINT: deprecated DRIFT: high
▸ 3 reusable components found
$ loading more...
$ submit: