33 dépôts
Utilities for inspecting, verifying, and conditionally interacting with installed application plugins.
Distinguishing note: None of the candidates were provided; this focuses on runtime verification of plugin presence.
Explore 33 awesome GitHub repositories matching development tools & productivity · Plugin Lifecycle Management. Refine with filters or upvote what's useful.
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.
Payload verifies the presence of a specific plugin within the configuration to conditionally apply logic or safely interact with other plugin options.
vim-plug is a plugin manager for the Vim text editor that functions as a git-based dependency manager and configuration bootstrapper. It downloads and organizes external plugin packages from remote repositories to extend the editor's functionality. The project acts as a lazy-loading orchestrator to reduce editor startup time by deferring the loading of plugins until specific commands or file types are encountered. It enables version pinning by allowing plugins to be fetched using specific git branches, tags, or commit hashes. The manager provides a framework for plugin installation, lifecycl
Automates the plugin setup process by running custom commands immediately after installation or updates.
Zellij is a terminal multiplexer and workspace manager designed to organize command-line sessions into persistent, reconfigurable layouts. It functions as a terminal plugin framework, allowing users to extend their environment with modular, event-driven components that interact with the host through a structured message-passing protocol. The project distinguishes itself through a layout-engine-based architecture that decouples visual pane arrangements from process execution, enabling automated and repeatable terminal workflows. It includes integrated support for web-based remote access, facil
Stores persistent state in a dedicated directory that remains available to all instances of a plugin during its lifecycle.
Kickstart.nvim is a foundational boilerplate designed for building personalized Neovim environments. It provides a structured framework that uses Lua scripting to organize editor settings and custom logic, serving as a starting point for users to develop their own text editing workflows. The project distinguishes itself by integrating a centralized plugin manager that automates the installation, versioning, and lazy-loading of extensions. This orchestration minimizes startup latency while maintaining a declarative approach to managing the lifecycle of editor tools. The framework supports mod
Automates the full lifecycle of editor extensions, including installation and lazy-loading.
LazyVim is a modular configuration framework and distribution for Neovim that transforms a base text editor into a comprehensive integrated development environment. It provides a structured system for managing, loading, and orchestrating editor extensions using Lua, designed to standardize professional development workflows through a curated collection of settings and plugins. The project distinguishes itself through a focus on performance and stability, utilizing deferred plugin initialization to minimize startup latency and resource consumption. Its architecture relies on a directory-based
Automates the loading and organization of extensions using a directory-based structure to ensure a stable and performant development environment.
Grav is a flat-file content management system that eliminates the need for a traditional database by storing site content and configuration in human-readable Markdown and YAML files. Built as a modular PHP web framework, it uses a hierarchical page routing system where the physical directory structure directly determines the site's URL paths. The platform is distinguished by its event-driven plugin architecture and a command-line interface that prioritizes system administration, deployment, and maintenance tasks. It utilizes a blueprint-driven system to generate administrative forms from stru
Provides mechanisms for managing persistent data storage for individual plugins.
NodeBB is a real-time, self-hosted community forum platform built on Node.js. It is designed to support scalable discussion environments by utilizing a document-oriented database for content storage and an in-memory engine for high-speed data retrieval and session management. The platform provides a comprehensive administrative interface for managing user groups, forum settings, and system health. What distinguishes the platform is its native support for federated social networking via the ActivityPub protocol, allowing forums to exchange content, synchronize discussions, and interact with de
Enables or disables installed extensions through a control panel or command line interface to maintain system stability.
Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi
Provides a framework for loading, configuring, and managing the lifecycle of modular automation extensions.
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.
Controls the activation and deactivation of plugins through command-line flags, environment variables, or configuration files.
EmDash is an open-source content management system built on Astro that combines a visual admin panel with a plugin-driven architecture and server-side rendering. It provides a complete content management system with structured content modeling, a rich text editor using Portable Text format, and a TypeScript API for type-safe content queries. The system supports authentication through passkeys, OAuth 2.1, and external providers, with role-based access control and fine-grained permission scopes. What distinguishes EmDash is its plugin development framework, which supports both native plugins ru
Persists plugin configuration and operational data in indexed collections and a per-plugin key-value store.
Better Discord enhances Discord desktop app with new features.
Saves and loads persistent key-value data per plugin across application sessions.
VirtualAPK is an Android plugin framework and runtime environment designed to load and execute external Android packages dynamically. It functions as a component host that allows a main application to run activities, services, and providers delivered via external modules without requiring system installation or manifest registration. The framework enables dynamic feature delivery by loading external packages at runtime, allowing application functionality to be updated without redeploying the entire app. It provides a mechanism for Android sandbox execution, running isolated components within
Hosts and controls the lifecycle of activities, services, and providers delivered via external plugin modules.
BigBlueButton is an open-source virtual classroom software and meeting server designed for hosting real-time online teaching sessions. It functions as a WebRTC video conferencing platform and collaboration suite, providing a self-hosted environment for virtual classroom management and online course administration. The system distinguishes itself through specialized educational tools, including an interactive quiz engine, breakout room coordination, and live polling. It provides a comprehensive suite of collaborative assets such as a shared infinite whiteboard, real-time co-authored notes, and
Manages the loading of plugins globally or per-meeting via manifests and controls their availability in breakout rooms.
packer.nvim is a declarative plugin manager for Neovim that uses the editor's native package system to install, update, and remove plugins. It functions as a lazy loading orchestrator, a Lua package manager for Luarocks dependencies, and an environment snapshot tool for saving and restoring plugin states to enable version rollbacks. The project optimizes editor startup by compiling loading rules and deferring plugin initialization until specific triggers, such as commands or filetypes, occur. It ensures environment stability through dependency-graph resolution and loading order control. The
Implements custom handlers to define how specific configuration keys in the plugin specification are processed.
Higress is an AI API gateway and cloud-native traffic manager that functions as a Kubernetes ingress controller. It provides a centralized system for routing, securing, and optimizing traffic directed toward large language models, AI agents, and microservice architectures. The project distinguishes itself through deep AI orchestration, including the ability to host and manage Model Context Protocol servers that transform REST APIs into tools for AI agents. It features specialized AI infrastructure for model request proxying, protocol translation across multiple providers, and semantic-based c
Stores and retrieves metadata properties during a request lifecycle to pass state across different plugins.
Veloren is an open-source multiplayer RPG featuring a voxel-based action adventure in a procedurally generated fantasy world. It is built upon a voxel game engine that supports 3D rendering via Vulkan and Metal, utilizing a procedural world generator to create geography and ecosystems based on erosion algorithms and temperature maps. The project is distinguished by a sandboxed plugin system using WebAssembly, which allows for the addition of new game logic and equipment without recompiling the core engine. It also features a dedicated game server architecture designed to synchronize state, ma
Provides persistent data stores for plugins to maintain state across different event executions.
SerpentAI is a game AI development kit and computer vision framework designed for building autonomous agents that interact with video games. It serves as a game input automation tool and a machine learning model integration engine, allowing developers to create agents that perceive game states and execute actions. The framework utilizes a plugin-based agent architecture to provide modular extensions for game-specific logic and behaviors. It features a specialized system for training, bundling, and deploying machine learning classifiers to recognize visual contexts and game states in real time
Controls the activation and deactivation of specific plugins via command-line instructions.
JMComic-Crawler-Python is a high-performance asynchronous web scraper and API client designed to programmatically retrieve images and metadata from a comic hosting service. It functions as a media archiving tool for batch downloading albums and chapters, automating the process of saving content to a local filesystem. The project is distinguished by its ability to reverse server-side pixel obfuscation, using a decryption tool to reconstruct sliced and shuffled images. To maintain stable connectivity, it utilizes a network bypass utility featuring dynamic domain rotation and proxy routing to ci
Ensures asynchronous plugins shut down gracefully by tracking background tasks during process exit.
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
Manages plugin installation, updates, uninstallation, and reloading entirely within the gaming session.
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.
Provides a comprehensive system for launching binary plugins and managing their execution and connection states.