18 dépôts
Defines directory-specific hook implementations for customizing test execution.
Distinct from Plugin Architectures: Distinct from Plugin Architectures: focuses on local, directory-scoped plugin implementation rather than the architecture itself.
Explore 18 awesome GitHub repositories matching software engineering & architecture · Local Plugin Implementations. Refine with filters or upvote what's useful.
xbar is a macOS menu bar status tool and system extension utility that displays the output of shell scripts and programs directly in the system menu bar. It functions as a script-based menu bar manager that runs local and third-party scripts to create real-time status indicators and dynamic dropdown menus. The utility enables the creation of system monitoring dashboards and custom shortcut launchers by executing external programs as subprocesses. It transforms plain text script output into formatted menu items and supports interactive dropdown menus, where user interactions can trigger shell
Discovers and installs custom scripts from dedicated local directories to extend functionality.
This project is a collection of official plugin packages and a native integration library designed to provide a consistent interface for accessing hardware and software functionality across different mobile and desktop platforms. It serves as a native platform bridge, enabling cross-platform applications to invoke native code and manage operating system dependencies. The project utilizes a federated plugin architecture, splitting plugins into common interfaces and separate platform implementations to allow for independent development and extension. It further supports native integration throu
Splits plugins into common interfaces and separate platform implementations for independent extension.
pytest est un framework de test pour Python qui fournit un exécuteur en ligne de commande pour découvrir et exécuter des suites de tests. Il est construit sur une architecture modulaire qui utilise les assertions standard du langage pour vérifier l'exactitude du code, inspectant automatiquement les expressions pour fournir des rapports d'échec détaillés sans nécessiter de méthodes d'assertion spécialisées. Le framework se distingue par un système d'injection de dépendances qui gère la logique de configuration et de nettoyage en résolvant et en injectant automatiquement les ressources dans les fonctions de test. Il dispose également d'une architecture de plugins basée sur des hooks qui permet une personnalisation approfondie du cycle de vie des tests, y compris la collecte, l'exécution et le reporting. Ces capacités sont soutenues par la paramétrisation dynamique, qui génère plusieurs instances de test à partir d'une seule définition, et la mise en cache de l'état persistant qui permet de relancer sélectivement les tests ayant échoué entre les sessions. Au-delà de son modèle d'exécution principal, le projet offre une suite complète d'outils pour gérer les environnements de test, y compris la capture de sortie, la gestion des logs et la validation des avertissements. Il prend en charge des scénarios de test complexes grâce à des fonctionnalités telles que la gestion des fichiers temporaires, le patching d'objets et la capacité d'exécuter nativement des suites de tests existantes provenant d'autres frameworks. La configuration est gérée via des fichiers centralisés, permettant un contrôle précis sur la découverte, le filtrage et le comportement d'exécution des tests. Le projet est distribué en tant que paquet Python standard et inclut une documentation étendue sur sa configuration, son système de plugins et son interface en ligne de commande.
Defines directory-specific hook implementations in configuration files to customize test execution behavior for specific subdirectories.
Streamlink is a command line video stream extractor that retrieves direct stream URLs from online services for use in external media players. It functions as a local media stream pipe, redirecting raw video data from web services into local files or players via standard input or HTTP. The project includes a headless browser stream scraper to intercept network requests and extract media data from script-heavy websites, alongside a dedicated processor for HLS and DASH segmented media streams. The tool utilizes a modular video plugin framework, allowing support for new streaming platforms to be
Supports discovering and loading custom plugins from local filesystem directories to expand service compatibility.
Fisher is a plugin manager and shell extension manager specifically for the Fish shell. It provides a system for installing, updating, and removing plugins, themes, functions, and completion scripts. The tool uses a flat-file state persistence method to track installed extensions in a plain text file, which enables the synchronization of shell environments across different systems using version control. It covers the full lifecycle of shell extensions, including the discovery of installed plugins, the installation of packages from remote repositories, and the development of distributable she
Includes a utility to discover and filter currently installed plugins from the local filesystem.
Better Discord enhances Discord desktop app with new features.
Ships a framework for writing JavaScript plugins that extend Discord's functionality.
LiteLoaderQQNT is a plugin loader and modding framework designed to modify the functionality and appearance of the QQNT client. It enables the injection of third-party extensions and custom scripts to alter the application's core behavior and visual themes. The project includes a dedicated settings interface for managing the plugin lifecycle, allowing users to install and remove extensions without manual filesystem edits. It also provides a public marketplace for the discovery and distribution of versioned extension archives. The framework supports loading plugins from the local filesystem a
Scans local filesystem folders to identify and load external scripts based on a predefined directory structure.
Decky Loader is an open-source plugin system that extends the Steam Deck's gaming mode interface with community-made plugins and customizations. It functions as a plugin loader that injects JavaScript plugins into the Steam Deck's web-based interface at runtime, enabling real-time appearance and behavior changes without leaving the active gaming session. The system combines a CORS-bypassing proxy layer that intercepts and modifies HTTP fetch requests from plugins to remove same-origin restrictions, with a Python-to-TypeScript bridge that exposes Python functions as callable TypeScript methods
Opens a built-in browser within the Steam Deck overlay to discover and install plugins with one click.
InvenTree is an open-source inventory management platform built on Django, designed for tracking parts, stock levels, and supply chain operations through a web interface and REST API. The system uses barcodes—including QR codes, 1D barcodes, and Data Matrix codes—as primary identifiers for scanning, linking, and triggering inventory actions, and extends core functionality through a Python plugin framework supporting custom actions, UI panels, barcode handlers, and scheduled tasks. The platform distinguishes itself through a comprehensive plugin-based extensibility system that allows custom in
Redirects frontend plugin loading to a local development server so changes can be tested without rebuilding the package.
Claudecodeui is an open-source web interface that orchestrates multiple AI coding agents from different providers—including Claude Code, Cursor CLI, Codex, and Gemini CLI—side by side in isolated cloud environments. It functions as a multi-provider orchestration platform, allowing users to run agents from different tools within the same workspace without being locked into a single vendor. The platform runs each agent session inside a hypervisor-level Docker sandbox that isolates filesystem, network, and process access, with sessions persisting in the cloud to survive network disconnection or
Starts a Node.js subprocess per plugin that can access the filesystem, call external APIs, use npm packages, and keep state in memory.
next-i18next is an internationalization library that integrates the i18next ecosystem into Next.js applications, supporting both the App Router and Pages Router. It provides locale-aware routing middleware, server-component translation hydration, and a unified translation management system that works across server and client components. The library handles automatic language detection from browser cookies and HTTP Accept-Language headers, persists user language preferences across sessions, and rewrites URLs with locale prefixes for proper routing. It includes a translation hydration framework
Loads translation files from remote APIs, CDNs, or custom backends using i18next plugins instead of local JSON files.
go-plugin est un framework pour implémenter des architectures de plugins où les extensions s'exécutent en tant que processus séparés et communiquent via un système de plugin Go RPC. Il fonctionne comme une bibliothèque de communication inter-processus et un gestionnaire de cycle de vie qui permet aux applications hôtes de découvrir, lancer et surveiller des plugins binaires externes. Le framework permet des systèmes de plugins multi-langages, permettant aux plugins écrits dans différents langages de s'intégrer à un hôte via des protocoles RPC standardisés. Il dispose d'un pont RPC bidirectionnel qui permet à la fois à l'hôte et au plugin d'échanger des implémentations d'interface pour des échanges de données complexes et des rappels. Le système fournit une isolation de processus en exécutant les plugins en tant que sous-processus indépendants, garantissant que les plantages de plugins ne terminent pas l'application hôte. Il couvre la sécurité via l'authentification TLS mutuelle et la vérification d'intégrité, ainsi que l'orchestration du cycle de vie, y compris le rattachement de processus avec état pour maintenir la connectivité lors des mises à niveau de l'hôte. Les capacités supplémentaires incluent la découverte binaire, le versionnage de protocole et la synchronisation des journaux et flux de sortie des plugins vers l'hôte.
Scans local directories using glob patterns to identify and locate external plugin binary files.
Ce dépôt est une collection organisée de paquets Dart officiels et de plugins Flutter maintenus par les créateurs du framework. Il sert de source centralisée de bibliothèques de code modulaires et d'extensions vérifiées, conçues pour fournir un accès standardisé au matériel natif et aux API du système d'exploitation. La collection fournit des bibliothèques de composants UI multiplateformes qui assurent une cohérence des éléments d'interface et des widgets sur différents systèmes d'exploitation. Ces plugins officiels intègrent des fonctionnalités standard dans les applications via un ensemble de bibliothèques maintenues. Le projet couvre un large éventail de capacités, incluant le développement d'interface utilisateur, la logique applicative multiplateforme et la gestion d'état des applications mobiles. Ces bibliothèques permettent l'intégration d'un accès matériel spécialisé et de capacités logicielles standard dans le workflow de développement.
Implements architectural designs that separate common plugin interfaces from platform-specific native implementations.
Zinit est un gestionnaire de plugins Zsh conçu pour télécharger, charger et mettre à jour des extensions et des snippets pour le shell Z. Il fonctionne comme un optimiseur de performance, un installateur de binaires shell et un gestionnaire de complétion, fournissant un framework pour l'automatisation du cycle de vie du shell et l'enregistrement des définitions de complétion par tabulation. Le projet se distingue par une optimisation avancée du démarrage, utilisant la compilation en bytecode, la mise en cache de configuration et le chargement différé pour réduire les temps de boot du shell. Il différencie davantage son modèle d'exécution de plugins en prenant en charge le sourcing de snippets de code distants individuels sans nécessiter d'installations complètes de dépôts et en utilisant des couches d'émulation shell pour assurer la compatibilité avec une syntaxe non native. Les capacités plus larges du gestionnaire incluent l'automatisation des cycles de vie des plugins via des hooks d'installation, le déploiement de binaires compilés dans des répertoires préfixés dédiés, et l'activation dynamique des plugins basée sur les conditions environnementales. Il fournit également des outils pour gérer les services en arrière-plan utilisant des tubes nommés, surveiller l'activité des plugins et effectuer une analyse des performances de chargement.
Provides the ability to generate plugin skeletons for local development and testing.
OpenAgents is an open-source platform for deploying, managing, and interacting with language agents through a conversational interface. Agents on this platform can analyze data by generating and executing Python and SQL code, invoke external plugins, browse the web autonomously, and perform tasks like flight search, map directions, and social media posting—all driven by natural language. What distinguishes the platform is its architecture for persistent agent lifecycle management, isolated code execution via a sandbox, multi-agent coordination for complex workflows, and automatic plugin disco
Selects the most appropriate plugin for a user request by matching intent descriptors against a plugin capability index.
unplugin-auto-import is a build-time import automation plugin and AST-based code transformer. It analyzes source code to identify missing identifiers and automatically injects the required import statements during the bundling process. The project functions as a cross-bundler build plugin, providing a unified abstraction layer that ensures consistent behavior across Vite, Webpack, and Rollup. It utilizes a pattern-based module resolver to scan local directories via glob patterns and employs a TypeScript declaration generator to maintain type definition files for IDE autocompletion. Its capab
Scans local filesystem paths using glob patterns to find and load local components and utilities.
Remix is a comprehensive blockchain development environment and Ethereum smart contract IDE. It provides a complete workspace for writing, compiling, deploying, and debugging smart contracts across simulated and public blockchain networks. The project distinguishes itself as a specialized toolchain for EVM debugging and analysis, offering opcode-level transaction stepping and state memory analysis. It also includes a dedicated zero-knowledge proof toolchain for compiling ZK circuits and generating cryptographic proofs, alongside an AI-powered coding assistant for code generation and explanati
Supports local plugin development by allowing the IDE to load extensions directly from the developer's machine for testing.
Cette bibliothèque fournit un framework fondamental pour internationaliser les applications Ruby en découplant le texte du code source. Elle gère le cycle de vie complet de la traduction, y compris l'interpolation de contenu dynamique, la pluralisation et le formatage spécifique à la locale. Le système garantit la stabilité de l'application grâce à une gestion d'état thread-safe et une gestion d'erreurs configurable pour les clés de traduction manquantes. Le projet se distingue par une architecture hautement modulaire qui prend en charge des backends de stockage enfichables, permettant aux données de traduction d'être récupérées à partir de bases de données, de magasins clé-valeur ou de formats de fichiers standards. Il inclut une logique sophistiquée pour la résolution de repli hiérarchique, garantissant que le contenu reste disponible même lorsque des traductions spécifiques sont manquantes. De plus, la bibliothèque facilite le routage sensible à la locale et l'interception de requêtes, permettant aux applications de maintenir un contexte linguistique cohérent à travers les sessions utilisateur. Au-delà des primitives de traduction de base, la bibliothèque offre des outils pour automatiser les flux de travail de localisation, tels que l'extraction de chaînes codées en dur et l'échafaudage de nouveaux projets. Elle fournit également des mécanismes pour analyser les entrées utilisateur spécifiques à la région, telles que les dates et les nombres, dans des formats standardisés. Le framework prend en charge la translittération de texte et s'intègre avec des formats de fichiers standards pour rationaliser la gestion du contenu multilingue.
Provides a pluggable architecture to retrieve translation data from databases, key-value stores, or remote backends.