36 مستودعات
Interfaces that provide a unified API for interacting with multiple database engines and dialects.
Distinguishing note: None of the candidates were provided; this focuses on cross-dialect consistency.
Explore 36 awesome GitHub repositories matching data & databases · Database Abstraction Layers. Refine with filters or upvote what's useful.
n8n is a workflow automation platform that combines a visual interface with code-based extensibility to design, orchestrate, and manage automated processes. It provides a comprehensive suite of tools for data transformation, filtering, and storage, allowing users to build complex logic through conditional branching, looping, and sub-workflow execution. The platform supports both pre-built integration nodes and custom code execution in JavaScript or Python, enabling connectivity with a wide range of external services and APIs. The platform includes a suite of generative AI capabilities, such a
Abstracts database interactions to support multiple storage engines while simplifying schema migrations and query management.
Grafana is an observability data platform designed to aggregate metrics, logs, and traces from diverse sources into a unified environment. It functions as a centralized interface for visualizing complex telemetry data, transforming raw streams into interactive dashboards that support real-time system health tracking and performance monitoring. The platform distinguishes itself through a plugin-based modular architecture that integrates disparate databases, cloud services, and monitoring tools via a standardized data abstraction layer. This framework allows for the dynamic loading of external
Normalizes disparate time-series data from multiple backends into a unified query format for seamless analysis.
Strapi is an open-source headless content management system and JavaScript framework used for defining content schemas and managing structured data. It functions as a REST and GraphQL API gateway that decouples backend data storage from frontend delivery. The system includes a self-hosted administration interface for managing content entries and defining data models without manual database queries. The framework utilizes a plugin-based extension system to inject custom logic into the application lifecycle. It employs schema-driven content modeling to automatically generate database tables and
Implements a unified API for interacting with multiple database engines and dialects via an abstraction layer.
Memos is a self-hosted, container-native knowledge management platform designed for capturing and organizing personal notes. It functions as a private workspace where users can create content using markdown, tags, and media embeds to streamline daily productivity. The system is built to be deployed as a portable service, allowing individuals to maintain full control over their data and hosting environment. Beyond its core note-taking capabilities, the platform operates as a headless content service that exposes a structured RESTful API. This interface allows for programmatic interaction, enab
Abstract storage operations to support multiple database engines including SQLite, PostgreSQL, and MySQL for flexible data persistence.
This project is a privacy-first backend service designed to facilitate retrieval-augmented generation by processing local documents into searchable vector representations. It provides a modular architecture that allows users to ingest diverse file formats, manage document metadata, and perform semantic searches to provide context-aware responses for chat and completion requests. The system distinguishes itself through a database-agnostic abstraction layer that supports various storage backends, ranging from local disk storage to enterprise-grade vector databases. It offers flexible deployment
Unifies access to multiple storage backends, including local disk and specialized vector databases, through a modular interface layer.
Payload is a headless content management system and application framework that uses a code-first approach to define data schemas and administrative interfaces. By utilizing a centralized, type-safe configuration object, it automatically generates database schemas, API endpoints, and a fully customizable admin panel. The system is built on a database-agnostic architecture, allowing it to interface with various storage engines while providing a unified, type-safe API for server-side operations, REST, and GraphQL. What distinguishes Payload is its deep extensibility and developer-centric design.
Maps high-level data models to various database engines through interchangeable storage adapters.
GORM is a developer-focused object-relational mapping library for Go that provides a comprehensive data persistence framework. It serves as a database access layer, allowing developers to map application structures to database tables and perform CRUD operations using a fluent, type-safe query builder instead of writing raw SQL. The library distinguishes itself through its association-aware persistence, which automatically tracks and synchronizes complex entity relationships during database operations. It utilizes a driver-agnostic interface to maintain consistent behavior across various stora
Provides a unified abstraction over various database dialects to ensure consistent query execution across different underlying storage engines.
TypeORM is an object-relational mapper for TypeScript and JavaScript that bridges the gap between object-oriented application code and relational database tables. It provides a comprehensive data persistence layer that allows developers to define database entities using class decorators or configuration objects, enabling seamless interaction with data through object-oriented patterns. The project distinguishes itself through a flexible architecture that supports both the data mapper and repository patterns, alongside a fluent query builder that translates high-level method calls into platform
Standardizes interactions across multiple database engines by providing a unified interface for executing queries and managing connections.
Directus is a headless content platform that functions as a backend service, automatically generating REST and GraphQL APIs by performing introspection on existing SQL database schemas. It serves as a unified data orchestration layer, decoupling content management from frontend delivery while providing a secure, stateless gateway for database transactions. The platform distinguishes itself through a granular role-based access control engine that enforces security policies at the field level across all API endpoints. It includes a visual, low-code administrative dashboard that allows non-techn
Maps database tables into a unified, queryable data model for applications.
ntfy is a self-hosted messaging infrastructure that provides a lightweight platform for sending and receiving real-time notifications. It functions as a topic-based pub-sub server, allowing users to publish and subscribe to message channels using standard HTTP requests. By bridging server-side events with native mobile and desktop clients, it enables the delivery of alerts across various environments through a unified communication layer. The project distinguishes itself by offering a complete, private notification ecosystem that includes persistent message caching and robust access control.
Decouples application logic from storage by supporting interchangeable database drivers for message persistence and user access control.
Druid is a database connection management and monitoring framework designed to maintain persistent, high-performance links between applications and relational databases. It functions as a resource manager that automates the lifecycle of connection pools, reducing the overhead associated with repeatedly opening and closing network connections. The project distinguishes itself through an integrated query analysis engine that decomposes database statements into structured components. This capability enables real-time security auditing, syntax validation, and metadata extraction, allowing for the
Translates database operations into specific query syntaxes to ensure compatibility across various relational database management systems.
Bagisto is a modular e-commerce platform designed for building and managing scalable online storefronts. It functions as an enterprise-grade toolkit that provides a structured environment for handling complex inventory, secure payment processing, and shipping logistics. Built on a flexible architecture, the platform allows developers to extend core business logic through custom packages and specialized product types. The platform distinguishes itself through a highly modular design that utilizes service-provider-based dependency injection and a repository-pattern data access layer to decouple
A unified interface for database interactions allows the application to perform complex operations while remaining agnostic to the specific storage engine.
Backtrader is a Python framework designed for the development, backtesting, and live execution of algorithmic trading strategies. It provides a comprehensive environment for quantitative finance, allowing users to simulate trading logic against historical market data or connect directly to brokerage platforms for automated real-time trading. The project distinguishes itself through a unified event-driven architecture that treats backtesting and live trading with the same API. This consistency is supported by a flexible data-feed abstraction layer that normalizes diverse financial sources, ena
Normalizes diverse financial data sources into a unified time-series format for consistent processing across different backtesting scenarios.
Knex is a programmatic SQL query builder for Node.js applications. It provides a unified interface for generating database statements and managing structural versioning through a schema migration tool. The project features a multi-dialect database layer that translates programmatic queries into specific syntax for relational databases including PostgreSQL, MySQL, SQLite3, and MSSQL. This allows for writing database logic that remains compatible across different systems. The system includes infrastructure for managing reusable database connection pools and handling relational transactions to
Implements a unified API layer for interacting consistently with multiple database engines and dialects.
This project is an educational framework designed to teach the fundamentals of building core distributed systems and web services from scratch in Go. It provides a collection of modular implementations that demonstrate how to construct essential infrastructure components, including web servers, remote procedure call systems, distributed caches, and database abstraction layers. The framework distinguishes itself by focusing on the internal mechanics of these systems rather than providing a high-level abstraction for production use. It covers the implementation of complex architectural patterns
Provides a unified API for interacting with multiple database engines and dialects.
This toolkit provides an asynchronous interface for interacting with relational databases, offering a unified driver-agnostic layer for managing connection pools and executing transactions. It is designed to integrate with asynchronous runtimes, enabling non-blocking database operations while maintaining secure, encrypted communication between the application and the database server. The project distinguishes itself through its compile-time validation capabilities, which use procedural macros to inspect SQL syntax and parameter types against a live database schema during the build process. Th
Provides a unified API for interacting with multiple relational database engines and dialects.
LoopBack is a Node.js API framework used to build RESTful services and backend applications. It functions as a model-driven API generator that automatically maps predefined data models to network endpoints to create standardized web interfaces. The project features a database abstraction layer that unifies access across diverse SQL databases, NoSQL stores, and remote data sources. It includes a backend application scaffolder using command-line generators to automate the creation of project structures and data connectors. Additionally, it provides an API authentication system to manage applica
Implements a database abstraction layer that unifies access across diverse SQL databases, NoSQL stores, and remote data sources.
Nightingale is a Prometheus-compatible monitoring and alerting platform designed to centralize telemetry management across multiple time-series databases. It functions as a multi-source alerting engine and metric data pipeline that ingests telemetry via remote write protocols and triggers alarms based on data from sources such as Prometheus, Elasticsearch, Loki, and ClickHouse. The system is distinguished by its automated alert healing system, which executes predefined scripts and RPC-based corrective actions when monitoring thresholds are breached. It supports distributed alert processing, a
Provides a unified interface to connect diverse time-series databases and search engines for alerting and visualization.
Open MCT is a web-based framework designed for visualizing telemetry data and monitoring the health of complex systems. It provides a centralized environment for ingesting, processing, and displaying real-time and historical data streams through customizable operator dashboards. The platform is built on a modular architecture that allows for the integration of external data sources and the addition of custom features through a plugin system. By utilizing a hierarchical object-graph model and a unified interface for time-series data, the framework ensures that information is consistently repre
Provides a unified interface for seamless retrieval of both historical and real-time time-series data.
Doctrine ORM is a PHP object-relational mapper that connects application objects to relational database tables. It uses the data mapper and identity map patterns to decouple the in-memory object model from the database schema, allowing developers to manage data persistence without writing manual SQL. The project features a dedicated object-oriented query language and programmatic builder for retrieving data based on entities rather than tables. It implements a unit-of-work system to track object changes during a request and synchronize them via atomic transactions. The capability surface inc
A consistent interface for interacting with various database engines to decouple logic from SQL dialects.