23 dépôts
Mechanisms for determining the active runtime version by searching for configuration files in the current and parent directories.
Distinct from Directory-Based Overrides: None of the candidates describe runtime version resolution via directory traversal; mt1 focuses on theme/config overrides.
Explore 23 awesome GitHub repositories matching software engineering & architecture · Directory-Based Version Resolution. Refine with filters or upvote what's useful.
nvm is a Node.js version manager implemented as a POSIX bash script. It serves as a shell environment manager and runtime orchestrator for installing, switching, and managing multiple versions of the Node.js runtime on POSIX systems. The tool allows for the automation of runtime switching by reading configuration files in project directories to select the required version. It supports the management of long-term support releases and the migration of global packages between different installed versions of the runtime. The project covers broader capabilities including runtime management throug
Automatically switches the active Node.js version by detecting configuration files in the current working directory.
rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar
Determines the active Ruby version by searching for configuration files in the current and parent directories.
rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby versions on a single machine and coordinates the selection of the active version based on the current directory or shell session. The tool functions as an extensible command line framework that intercepts executable calls using shell shims. These shims route requests to the selected language version, ensuring environment isolation by storing binaries in independent directories. The system includes capabilities for language runtime administration, including the ability to downlo
Provides automatic Ruby version switching by detecting configuration files within the project directory hierarchy.
Cheat is a command-line cheatsheet manager and terminal reference tool used for creating and viewing searchable, interactive guides. It functions as a plain-text knowledge base that organizes technical notes and command snippets through a hierarchical directory structure and metadata tags. The tool provides context-aware note management by discovering and displaying project-specific documentation based on the current working directory. It allows for the creation of a personalized collection of reference files that can be retrieved directly within a shell environment to assist with command opt
Implements recursive directory traversal to locate project-specific configuration and notes.
Volta is a cross-platform toolchain orchestrator and JavaScript toolchain manager. It functions as a version manager for Node.js and related package managers, allowing for the installation and coordination of multiple runtimes across a system. The project operates as a project-based version switcher, automatically detecting and switching to the required tool versions based on the current directory. This ensures environment consistency across different developer machines by resolving versions through project configuration.
Determines the active tool version by traversing the filesystem upwards for configuration files.
This project provides the core framework and system API layer for the Android operating system. It consists of the fundamental Java and C++ libraries that define system behavior and establish the interface contracts required for system applications and hardware abstraction. The project includes a runtime optimizer used to reduce startup time and improve execution speed by pre-compiling methods and configuring boot images. It also features a software quality toolchain that enforces code formatting, audits commit metadata, and manages API compatibility to ensure stable interface contracts acros
Implements mechanisms for locating configuration and source files by resolving paths through a centralized mapping system.
cdnjs is a free, community-maintained content delivery network that hosts thousands of open-source frontend libraries. It delivers popular JavaScript and CSS assets from a global CDN to speed up website performance and reduce server load, with each library version stored as an immutable snapshot under a predictable directory structure. The platform provides a RESTful JSON API for programmatic access to library metadata, version details, and search functionality. This API returns structured data with HTTP cache headers, including immutable version details cached for nearly a year and library m
Structures library directories by semantic version to enable direct URL access to specific releases.
This project is a configuration utility and JavaScript bundler manager designed to extend build scripts and override settings for Create React App applications. It functions as a tool for modifying Webpack configurations without requiring a permanent ejection from the managed build system. The utility allows for the customization of development and production build settings, enabling the use of custom build scripts to redefine project entry points. It provides mechanisms to modify the default build and development server settings to fit specific project requirements. Capability areas include
Acts as an intermediary layer between custom developer settings and the underlying build engine.
pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions without affecting the system global installation. It functions as a multi-version installer and environment controller that ensures isolation and reproducibility across different projects. The tool uses a shim-based routing system to intercept executable calls and direct them to specific versioned binaries. This allows for both system-wide default configurations and local directory-level overrides, where a specific version is automatically activated when entering a project folder
Resolves the active Python version by prioritizing local directory configuration files over global system settings.
This library is an integration bridge for embedding React components within Ruby on Rails views and controllers. It provides a hybrid frontend architecture that allows developers to mix traditional server-rendered templates with isolated interactive components. The project differentiates itself through a comprehensive server-side rendering wrapper that generates HTML on the server to improve load speeds and search engine visibility. It includes a client-side hydration manager that automatically mounts and unmounts components by scanning the document for markers and synchronizing with navigati
Configures the execution context to resolve component names from specific directories or multiple asset bundles.
pyenv-virtualenv is a plugin for pyenv that creates and manages isolated Python virtual environments on Unix-like systems. It functions as an environment orchestrator that extends the core version switching system to provide project isolation. The tool automates the activation and switching of Python environments based on the current working directory. It also includes a bridge for managing and interacting with Conda environments through the pyenv interface. The project covers the full lifecycle of environment management, including the creation, listing, and deletion of isolated environments
Organizes virtual environments as subdirectories within a central versions folder to maintain isolation.
Manage your Java environment
Automatically selects a Java version when entering a specific project directory.
Rushstack est un ensemble d'outils complet pour gérer les monorepos TypeScript à grande échelle, fournissant un framework pour l'automatisation des pipelines de build, la coordination des dépendances et l'analyse statique. Il fonctionne comme un orchestrateur de build incrémental et un système de gestion conçu pour maintenir la cohérence et la performance à travers de multiples packages dans un espace de travail partagé. Le système se distingue par un modèle d'exécution basé sur des graphes acycliques dirigés et un incrémentalisme basé sur le hash de contenu, qui assure que seuls les projets affectés sont reconstruits. Il optimise davantage les workflows de développement via la mise en cache distante des artefacts de build avec des intégrations pour S3, Azure et HTTP, et utilise la gestion d'espace de travail basée sur des liens symboliques pour une visibilité immédiate des changements locaux. L'ensemble d'outils couvre un large éventail de capacités incluant des workflows de release automatisés, l'analyse de contrat API et l'application de la qualité de code en entreprise via des profils de linting standardisés. Il fournit également un support étendu pour le bundling d'actifs, la transpilation TypeScript et la génération de définitions de type à partir de schémas JSON et d'actifs statiques. Des domaines utilitaires supplémentaires incluent la gestion de la localisation, la génération d'avis de licence et l'orchestration d'interfaces de ligne de commande avec une sortie de processus synchronisée.
Converts string properties into absolute filesystem paths relative to the project root for consistent tool configuration.
php-xdg-base-dir est une bibliothèque PHP et un résolveur de chemin système conçu pour identifier les emplacements de système de fichiers standard pour la configuration, le cache et les fichiers d'exécution des applications. Il fournit une implémentation de la spécification XDG Base Directory pour organiser les données et la configuration spécifiques à l'utilisateur sur différentes plateformes. La bibliothèque résout les chemins de répertoire en mappant les catégories standard vers des emplacements de système de fichiers basés sur les normes Freedesktop.org. Elle gère l'organisation des fichiers multiplateformes en détectant le système d'exploitation et en appliquant les chemins par défaut correspondants. Le processus de résolution utilise une hiérarchie priorisée qui vérifie les variables d'environnement système avant de revenir aux valeurs par défaut du système d'exploitation. Cela garantit que les scripts PHP respectent les normes système et évitent d'encombrer les répertoires personnels des utilisateurs.
Identifies the correct directory paths for application configuration, data, cache, and runtime files.
Il s'agit d'une extension Visual Studio Code qui intègre le moteur de formatage Prettier dans l'éditeur. Elle sert de pont pour fournir un style de code multi-langage opinionné en réimprimant le code source à partir d'un arbre de syntaxe pour imposer une mise en page et un retour à la ligne cohérents. L'extension permet un formatage automatisé lors de l'enregistrement ou sur commande, assurant une base de code uniforme au sein des équipes. Elle résout les règles de style en fusionnant les préférences de l'éditeur, les fichiers EditorConfig et les fichiers de configuration locaux, et peut se coordonner avec des linters pour résoudre les règles stylistiques conflictuelles. Le système prend en charge un large éventail de langages de programmation et de formats de balisage, avec la possibilité d'étendre la prise en charge des langages via des plugins et un mappage personnalisé des extensions de fichiers. Elle gère la résolution de version du formateur en privilégiant les installations locales au projet par rapport aux versions intégrées et suit les positions du curseur pour maintenir l'emplacement du caret après les modifications de code.
Prioritizes project-local formatter installations over bundled versions to ensure version consistency.
node-semver est un outil pour parser, comparer et valider des chaînes de version selon la spécification Semantic Versioning. Il fonctionne comme un évaluateur de plage de versions, une bibliothèque de comparaison et un utilitaire pour incrémenter des identifiants de version. Le projet inclut un utilitaire de coercition de version qui extrait des séquences numériques de chaînes non conformes pour approximer une version sémantique. Il fournit également une logique pour calculer la chaîne de version suivante en incrémentant les segments majeur, mineur ou patch. La bibliothèque couvre un large éventail de capacités de gestion de version, incluant l'analyse de plage pour déterminer si les versions satisfont des contraintes spécifiques, le tri de listes de versions basé sur la précédence, et la validation à la fois des versions individuelles et des plages de versions.
Arranges version strings in ascending or descending order based on semantic priority.
RVM est un gestionnaire de versions Ruby et un outil d'automatisation de build conçu pour installer et basculer entre plusieurs versions de l'interpréteur Ruby sur un seul système. Il sert d'isolateur de dépendances et de wrapper d'environnement shell, permettant la création d'ensembles de bibliothèques nommés pour éviter les conflits de version entre différents projets. Le projet se distingue comme un orchestrateur de déploiement qui automatise le provisionnement des runtimes Ruby sur des serveurs distants et des agents de build. Il génère des wrappers exécutables autonomes pour garantir que des runtimes et des ensembles de bibliothèques spécifiques sont chargés pour les tâches planifiées, les gestionnaires de services et les scripts d'initialisation système. L'outil couvre un large éventail de capacités, notamment la compilation automatique des sources avec des drapeaux de compilation personnalisés, l'installation dans l'espace utilisateur pour éviter les privilèges root, et l'intégration avec divers shells et éditeurs de texte. Il fournit également une infrastructure pour la synchronisation d'environnements distants, les tests de compatibilité d'intégration continue et l'intégration de serveurs d'applications.
Automates the resolution of library binaries to allow command execution without manual path prefixing.
vite-plus est une chaîne d'outils de développement web unifiée et une interface en ligne de commande conçue pour gérer les builds Vite, les runtimes JavaScript et les gestionnaires de paquets depuis un point d'entrée unique. Il fonctionne comme un gestionnaire de runtime JavaScript pour installer et épingler les versions de langage, un orchestrateur de tâches monorepo pour l'exécution de scripts sensibles aux dépendances, et un moteur d'échafaudage de projet pour amorcer des applications et des bibliothèques. Le projet se distingue en consolidant un cycle de vie de développement complet dans un seul outil, doté d'un moteur d'analyse statique unifié qui effectue la vérification de type, le linting et le formatage en une seule passe. Il fournit une orchestration monorepo avancée grâce à l'exécution parallèle et un système de mise en cache des résultats qui utilise une invalidation basée sur l'empreinte numérique pour ignorer les tâches redondantes. La chaîne d'outils couvre également un large éventail de capacités, y compris des pipelines d'assets web pour la compilation de production, le provisionnement automatisé d'environnements et la gestion des hooks de commit Git. Elle inclut également des utilitaires pour l'exécution de tests unitaires natifs et la création de binaires exécutables natifs.
Automatically resolves and installs required language versions and package managers by searching for project configuration files.
This project is a database version control system and schema evolution manager designed to track and apply incremental changes to database structures. It serves as a tool for versioning SQL database migrations using both programmatic PHP classes and SQL scripts. The system is designed specifically for integration with the Doctrine Object Relational Mapper for PHP, allowing database schemas to evolve incrementally without data loss through reversible migration steps. It covers capabilities for automated database migrations, environment synchronization, and schema versioning. These features fa
Maps PHP migration classes to specific database version steps by scanning designated directories.
Vfox est un utilitaire en ligne de commande conçu pour gérer plusieurs runtimes de langages de programmation et outils de développement sur une seule machine. Il fournit une interface unifiée pour installer, basculer et configurer des versions de logiciels sur différents systèmes d'exploitation, garantissant des environnements de développement cohérents. Le projet se distingue par une architecture modulaire basée sur des plugins qui permet l'intégration de divers runtimes de langages et utilitaires au-delà des valeurs par défaut intégrées. Il utilise une combinaison d'exécution basée sur des shims, de gestion de liens symboliques et d'injection d'environnement par hook shell dynamique pour maintenir les versions d'outils actives, offrant une expérience cohérente sur Windows, macOS et Linux. L'outil automatise la configuration de l'environnement en parcourant les arborescences de répertoires pour résoudre les fichiers de configuration spécifiques au projet, permettant un basculement de version automatique lors de la navigation entre différents dossiers de projet. Il prend en charge une configuration de portée de runtime granulaire, permettant aux utilisateurs de définir les exigences d'outils aux niveaux global, session ou projet. Le logiciel est distribué sous forme d'outil en ligne de commande qui s'intègre directement dans les environnements shell courants pour gérer les mappings de chemin et les variables d'environnement.
Determines the active runtime version by traversing directory trees to locate project-specific configuration files.