31 dépôts
Support for multiple database storage options for persisting system state.
Distinct from SQLite or PostgreSQL Storage: Broader than a specific SQLite/Postgres adapter; describes a general multi-backend persistence architecture.
Explore 31 awesome GitHub repositories matching data & databases · Pluggable Database Backends. Refine with filters or upvote what's useful.
Grist is a relational spreadsheet platform that combines the flexibility of a spreadsheet with the power of a relational database. At its core, it manages structured data across multiple linked tables, using a relational database engine to organize information while providing a familiar grid interface. The platform supports Python-based formulas for complex calculations and data transformations, with automatic recalculation when referenced cells change. The system is designed for self-hosted deployment, storing data in either portable SQLite files or enterprise-grade PostgreSQL databases. It
Supports different database types including SQLite and Postgres for persisting application data.
FerretDB is an open-source database emulator and protocol translator that mimics a MongoDB environment to support existing drivers and client tools on a relational backend. It functions as a stateless database proxy that converts binary wire protocol messages into SQL statements, allowing a relational engine to handle document-oriented requests. The project serves as a migration tool for moving applications from MongoDB to PostgreSQL without rewriting queries or changing client drivers. It achieves this by using PostgreSQL as a document store, storing and querying BSON documents through a tra
Enables the migration of data and applications from MongoDB to PostgreSQL without changing client drivers.
Dex is an OpenID Connect provider and identity federation proxy that translates authentication signals from various upstream sources into a unified OpenID Connect interface. It functions as a multi-protocol identity broker, enabling client applications to implement a single standard while delegating user verification to external identity providers. The project distinguishes itself through a pluggable connector architecture that bridges disparate protocols including LDAP, SAML, and OAuth2. It provides specific integrations for services such as GitHub, Google, GitLab, and Microsoft, while offer
Supports multiple database storage options, including SQL and etcd, for persisting system configuration and session state.
TeslaMate est un système auto-hébergé pour enregistrer et archiver la télémétrie des véhicules Tesla dans une base de données locale. Il fonctionne comme un enregistreur de données de véhicule et un tableau de bord de télémétrie conçu pour maintenir un historique complet des données de conduite et de l'état du véhicule localement. Le système inclut un tracker de coût de charge de véhicule pour surveiller le coût financier des sessions de charge basé sur l'utilisation d'énergie et les tarifs d'électricité. Il dispose également d'un gestionnaire de localisation par geofencing pour définir des limites géographiques personnalisées afin d'étiqueter automatiquement les lieux visités, et un courtier de données domotiques qui publie l'état du véhicule en temps réel vers un courtier local. Le projet fournit des capacités pour l'analyse de la santé de la batterie, la surveillance de la consommation d'énergie et la visualisation des métriques du véhicule. Il prend en charge l'importation de données historiques, la gestion de lieux personnalisés et l'intégration avec des outils de maison intelligente externes.
Uses a PostgreSQL database to persist high-precision vehicle state and charging logs for historical analysis.
Faraday is a vulnerability management platform and security tool aggregator designed to centralize security findings from multiple scanners into a single dashboard. It utilizes a relational security database to catalog hosts, services, and security flaws, enabling users to track remediation and analyze organizational risk. The platform distinguishes itself through a plugin-based system that normalizes diverse security tool outputs into a unified data model. It supports deep integration with a wide array of scanners and CLI tools, intercepting shell command output or parsing report files to ag
Implements a relational PostgreSQL storage system to catalog hosts, services, and security flaws.
Buildbot est un framework d'intégration continue (CI) basé sur Python et un orchestrateur de build distribué. Il fonctionne comme un moteur d'automatisation de build qui coordonne la récupération du code source, l'exécution des étapes de build et le reporting des résultats via un contrôleur central et un réseau d'agents de travail distants. Le système se distingue par une architecture d'extensibilité basée sur des plugins et un modèle de distribution maître-esclave. Il permet la modification dynamique des builds au runtime et supporte un backend de base de données enfichable pour persister l'état du système et l'historique des builds. Le projet couvre un large éventail de capacités, incluant la planification automatisée des builds et l'orchestration de pipelines, l'intégration au contrôle de version via polling et webhooks, et le provisionnement de workers sur des serveurs physiques, des conteneurs Docker et des clusters Kubernetes. Il offre également une surveillance et une observabilité complètes via l'analyse des logs de build et le suivi des performances, ainsi qu'une gestion sécurisée des secrets et une authentification multi-fournisseur. Le contrôle administratif est disponible via une interface web dédiée et des outils en ligne de commande pour la validation de configuration et la gestion des processus.
Supports multiple SQL database engines through a pluggable connector system for persisting system state.
SuperduperDB est un orchestrateur d'agents IA et une plateforme de machine learning intégrée aux bases de données. Il sert de framework pour construire des agents IA avec état et des applications de génération augmentée par récupération (RAG) en intégrant directement les modèles de langage avec les backends de base de données. Le projet permet le déploiement d'une infrastructure d'IA auto-hébergée et la gestion des modèles de langage sur du matériel privé en utilisant des points de contrôle locaux. Il se distingue en permettant aux utilisateurs d'attacher des composants d'IA directement aux champs de données, déclenchant l'exécution du modèle et des transformations automatisées basées sur les insertions et mises à jour de la base de données. La plateforme couvre un large éventail de capacités, incluant l'orchestration de machine learning pour l'entraînement et le fine-tuning, l'intégration de recherche vectorielle pour la récupération multimodale, et une couche de données agnostique au backend qui prend en charge divers moteurs de stockage SQL et NoSQL. Elle fournit également des outils pour l'orchestration de flux de travail déclaratifs et l'empaquetage d'applications IA réutilisables. Le système est implémenté en Python et fournit une API uniforme pour interagir avec plusieurs backends de base de données.
Implements a pluggable architecture supporting multiple database storage options for persisting system state.
Goravel est un scaffold de développement complet et un framework pour créer des applications web, des API REST et des services gRPC en utilisant le langage de programmation Go. Il implémente une architecture modèle-vue-contrôleur et fournit une boîte à outils complète pour des serveurs et clients RPC haute performance. Le framework se distingue par son écosystème intégré étendu, qui inclut un ORM fluide pour la gestion de base de données et une boîte à outils en ligne de commande dédiée pour l'automatisation administrative et le scaffolding de projet. Il dispose d'une abstraction de service basée sur des drivers qui permet aux développeurs de changer de backend de stockage, de cache et de session sans modifier la logique de l'application. La plateforme couvre une large surface de capacités applicatives, notamment le traitement de tâches asynchrones avec des files d'attente distribuées, la gestion sécurisée des identités via l'authentification par jeton, et une couche de sécurité robuste avec chiffrement et contrôle d'accès. Elle fournit également des outils pour la localisation de contenu, le rendu de modèles et une infrastructure de test automatisée avec mock de dépendances.
Provides interchangeable drivers for storing user session data in various backends.
OpenFGA is a fine-grained authorization server and policy decision point that implements relationship-based access control. It serves as a centralized authorization service for evaluating access requests and managing relationship tuples across distributed microservices and multi-tenant environments. The engine combines relationship graphs with attribute-based access control, using the Common Expression Language to evaluate dynamic runtime attributes and conditional access rules. It handles complex hierarchies and nested permissions by traversing chains of associations and parent-child links t
Supports diverse data stores including PostgreSQL, MySQL, and SQLite for relationship tuple storage.
WeRoBot est un framework de développement de chatbot et une bibliothèque d'intégration API conçue pour construire des bots automatisés et gérer les interactions pour les comptes officiels WeChat. Il fournit un environnement structuré pour traiter les entrées utilisateur et délivrer des réponses programmées via un moteur de routage de messages dédié. Le framework se distingue par un gestionnaire de session stateful qui persiste les données utilisateur à travers les interactions en utilisant des backends de stockage enfichables. Il propose également un système de routage qui analyse les payloads XML et dirige le trafic vers des handlers spécifiques basés sur le contenu, les événements ou les motifs de texte. La bibliothèque couvre un large éventail de capacités incluant la gestion d'assets multimédias, l'administration des profils et tags utilisateur, et la livraison de messages templates et de diffusions. Elle inclut des primitives de sécurité pour la vérification de signature de requête et le déchiffrement de message, aux côtés d'outils pour gérer les menus personnalisés interactifs et le transfert vers le service client. Le projet fournit une couche d'intégration compatible WSGI, permettant à la logique du bot d'être hébergée sur des serveurs web standard ou intégrée dans des frameworks web existants.
Persists user state across interactions using interchangeable backend drivers such as SQL, NoSQL, or file systems.
Youtu Agent is an open-source framework for building, running, and evaluating autonomous agents powered by large language models. It provides the core infrastructure for creating agents that follow reasoning loops, use toolkits, and coordinate with other agents to solve complex tasks, all managed through YAML-driven configuration files. The framework distinguishes itself through its support for multi-agent orchestration, where a planner agent decomposes tasks and coordinates specialized worker agents, and through its integration with the Model Context Protocol for connecting to external toolk
Switches evaluation storage from default SQLite to an external SQL database via an environment variable.
Apostrophe is an open-source Node.js headless content management system that delivers structured content through REST APIs while providing a visual in-context page editor for live editing. It is built on a module-based plugin architecture that extends CMS functionality through reusable modules, each encapsulating logic, configuration, and templates. The system uses schema-driven content modeling to define data structures and validation rules through configurable schemas and custom field types, with all content stored as flexible JSON-like documents in MongoDB. The platform distinguishes itsel
Selects between MongoDB and PostgreSQL as the primary data store for the application.
Hoodie est un framework de synchronisation de données et un backend JavaScript offline-first conçu pour maintenir les magasins de données côté client synchronisés avec un backend distant. Il fournit une couche de persistance local-first qui permet aux applications de rester fonctionnelles hors ligne en abstrayant la base de données côté client. Le système dispose d'une interface backend NoSQL qui permet l'interaction avec des magasins de données distants sans nécessiter de code boilerplate côté serveur personnalisé. Ceci est supporté par un système de pilotes modulaire d'adaptateurs backend enfichables qui connectent la couche de synchronisation à divers fournisseurs de bases de données distants. Le framework gère la synchronisation des données côté client et la persistance local-first pour assurer la cohérence à travers les appareils. Il couvre le déploiement de serveurs backend pour gérer la persistance des données et la création d'API hors ligne pour les applications web et mobiles.
Uses a modular driver system to translate synchronization requests into specific API calls for various remote database providers.
Konga is a web-based administration panel for managing Kong API Gateway entities, nodes, and configurations without requiring direct command-line or API calls. It provides a visual interface for configuring routes, services, plugins, and upstreams, and supports connecting to and switching between multiple distributed gateway instances from a single control plane. The panel includes role-based access control that regulates which administrators can view or modify gateway configurations through separate user accounts and permissions. It also offers polling-based health monitoring that periodical
Store panel data in MySQL, PostgreSQL, or MongoDB to keep it available across restarts.
Ce projet est un modèle de serveur fondamental construit avec NestJS, conçu pour créer des API REST et des environnements backend d'entreprise. Il fournit une structure préconfigurée qui intègre la connectivité aux bases de données, l'authentification et les services API courants. Le boilerplate inclut un système de sécurité utilisant des JSON Web Tokens et un contrôle d'accès basé sur les rôles pour gérer les sessions utilisateur et restreindre l'accès aux ressources. Il prend en charge l'internationalisation pour servir du contenu dans plusieurs langues et fournit un environnement conteneurisé utilisant Docker pour un déploiement cohérent. Le framework couvre un large éventail de capacités backend, y compris l'administration des comptes utilisateur, les services d'envoi d'e-mails et la gestion des téléchargements de fichiers pour un stockage local ou cloud. La persistance des données est gérée par des intégrations avec des magasins relationnels et de documents, soutenues par des utilitaires de seeding de base de données et une documentation API automatisée.
Supports selecting between MongoDB and PostgreSQL as the primary data store via TypeORM and Mongoose.
Synapse est une implémentation de homeserver Matrix qui fournit l'infrastructure pour la communication et la messagerie décentralisées en temps réel. Il fonctionne comme un serveur de chat fédéré qui synchronise les données de salon et les flux d'événements à travers des instances de serveur indépendantes pour permettre l'interopérabilité inter-domaines. Le serveur utilise un cœur hybride qui intègre une logique critique pour la performance en Rust avec une couche d'orchestration en Python. Il emploie une base de données relationnelle PostgreSQL pour persister les comptes utilisateurs et l'historique des conversations, et utilise un système de messagerie basé sur Redis pour distribuer les tâches à travers des workers horizontaux. Le projet couvre un large éventail de capacités, incluant la gestion sécurisée des identités avec intégration SAML et OpenID Connect, des outils administratifs complets pour la modération de contenu et la gestion des salons, et la gestion automatisée des médias. Il inclut également des systèmes pour la fédération décentralisée, la migration asynchrone de schéma de base de données et l'exportation de télémétrie pour la surveillance des performances.
Uses a PostgreSQL relational database to persist user accounts, room states, and message history.
Blackcandy est un serveur de streaming musical auto-hébergé et un gestionnaire de bibliothèque musicale numérique. Il permet aux utilisateurs d'héberger des collections personnelles de fichiers audio sur un serveur privé pour le streaming vers des navigateurs web et des applications mobiles dédiées. Le système inclut un moteur de synchronisation de bibliothèque multimédia qui surveille les changements du système de fichiers en arrière-plan et utilise le traitement parallèle pour maintenir la base de données musicale synchronisée. Il gère l'organisation de la bibliothèque en extrayant les métadonnées audio et en récupérant les images d'artistes et d'albums à partir de bases de données externes. La plateforme fournit des capacités pour la lecture audio à distance, la recherche dans la bibliothèque musicale et le stockage sécurisé des identifiants utilisant le chiffrement par hachage de mot de passe. Elle prend en charge des backends de base de données configurables et le montage de répertoires multimédias pour organiser et servir des fichiers audio à partir de chemins spécifiques. Le serveur est fourni sous forme de serveur multimédia conteneurisé pour une installation cohérente sur différentes plateformes d'hébergement.
Supports switching between lightweight local storage and external relational databases for different scaling requirements.
IPProxyPool est un gestionnaire de pool de proxy HTTP qui crawle, valide et sert une liste rotative d'adresses proxy fonctionnelles via une API programmatique. Il intègre le scraping de proxy, la validation de connectivité et le stockage en base de données persistante pour fournir une source gérée d'adresses IP pour les requêtes réseau. Le système utilise une architecture de scraping basée sur des plugins pour collecter des adresses IP depuis plusieurs sites web externes et une file d'attente de validation asynchrone pour tester ces candidats en parallèle. Il différencie son pool en attribuant des scores de stabilité numériques aux proxys via des vérifications de santé périodiques et une vérification de connectivité, permettant la récupération d'adresses à haute stabilité filtrées par région et protocole. Le projet inclut une couche d'abstraction de base de données avec des backends enfichables pour la persistance des données et fournit des outils pour purger des entrées proxy spécifiques. Il prend également en charge une logique de validation personnalisée pour définir les critères spécifiques utilisés pour déterminer la validité d'un proxy.
Provides an abstraction layer that allows swapping different database backends for persisting proxy data.
Ce projet est un client IA Node.js et un wrapper d'API REST conçu pour exposer les capacités des grands modèles de langage (LLM) en tant que service web. Il inclut une interface en ligne de commande pour une interaction directe avec les modèles et un gestionnaire d'état de conversation pour suivre et persister l'historique des chats entre les sessions. Le système dispose d'une passerelle de reverse proxy spécifiquement conçue pour contourner les restrictions des navigateurs et du web lors de l'accès programmatique aux interfaces d'IA. Il permet en outre la personnalisation de la personnalité de l'IA en injectant des préfixes de prompt et des étiquettes personnalisées pour contrôler le comportement et le ton du modèle. Le logiciel prend en charge la gestion du contexte conversationnel via des identifiants de session et des adaptateurs de stockage interchangeables pour la persistance de l'historique. Il peut être déployé en tant qu'environnement d'exécution conteneurisé pour garantir un hébergement cohérent sur différentes plateformes.
Ships interchangeable storage drivers to persist user session and conversation data.
Orioledb est un moteur de stockage cloud-native pour PostgreSQL conçu pour remplacer la couche de stockage par défaut afin d'améliorer l'évolutivité verticale et les performances sur le matériel moderne. Il fonctionne comme un magasin de tables organisé par index, organisant les lignes de table directement au sein de l'index primaire pour accélérer la récupération des données. Le moteur utilise un système de stockage de journal d'annulation (undo log) pour gérer le versionnage des données, ce qui élimine le besoin de vacuuming manuel et empêche le gonflement des tables. Il réduit en outre l'empreinte disque via la compression de données au niveau des blocs et des pages. Le projet fournit des capacités pour la gestion avancée des index et la maintenance automatisée des bases de données. Il inclut des fonctionnalités pour la récupération haute disponibilité via la journalisation au niveau des lignes, ainsi que des outils pour analyser l'utilisation de l'espace et vérifier l'intégrité des tables.
Replaces the default PostgreSQL storage engine to increase vertical scalability and throughput on cloud hardware.