awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
symfony avatar

symfony/config

0
View on GitHub↗
4,280 stars·44 forks·PHP·MIT·20 viewssymfony.com/config↗

Config

This project is a PHP configuration management library used to define, load, and validate application settings. It functions as a configuration merging engine and a schema validator, ensuring that software behaves consistently across different installations.

The library acts as a multi-format configuration loader that converts settings from various file types, such as YAML and XML, into a standardized internal format. It allows for the establishment of formal configuration schemas with validation rules and default values to prevent runtime errors caused by invalid inputs.

The system supports hierarchical configuration merging, which combines settings from multiple priority-ordered sources into a single unified set. This process includes recursive array merging and tree-based normalization to resolve conflicting values and apply environment-specific overrides.

Features

  • Application Settings Management - Provides a comprehensive system for defining, validating, and persisting application-wide configuration settings.
  • Typed Configuration Schemas - Enforces strict data types and structures on configuration inputs to prevent runtime errors.
  • Schema Validators - Validates application settings against formal schemas to ensure structural correctness and data type integrity.
  • Configuration Merging Engines - Functions as an engine for combining global and local configuration settings into a unified set.
  • Configuration Schemas - Allows the definition of formal configuration schemas specifying required structures, types, and constraints.
  • Configuration Merging - Combines settings from multiple files and origins into a single unified registry to resolve conflicts.
  • Multi-Format Configuration Loading - Supports loading application settings from diverse formats including YAML and XML into a standardized format.
  • Configuration Management Libraries - Provides a dedicated PHP library for defining, loading, and validating application settings.
  • Hierarchical Configuration Overrides - Implements a priority-based hierarchy for applying configuration settings from global to specific levels.
  • Configuration Source Priority - Implements a priority-based loading system where environment-specific settings override global defaults.
  • Recursive Configuration Merging - Deeply merges multiple configuration sources into a single resolved settings tree to handle complex value overrides.
  • Multi-Format Config Parsers - Parses multiple configuration formats such as YAML and XML, merging them into a single immutable tree.
  • Unified Internal Representations - Provides a unified internal representation to map multiple configuration serialization formats for consistent processing.
  • Configuration Value Resolvers - Provides mechanisms for resolving and retrieving the active configuration values to drive application logic.
  • Configuration Normalization - Normalizes raw input data from various sources into a consistent final configuration state.

Star history

Star history chart for symfony/configStar history chart for symfony/config

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does symfony/config do?

This project is a PHP configuration management library used to define, load, and validate application settings. It functions as a configuration merging engine and a schema validator, ensuring that software behaves consistently across different installations.

What are the main features of symfony/config?

The main features of symfony/config are: Application Settings Management, Typed Configuration Schemas, Schema Validators, Configuration Merging Engines, Configuration Schemas, Configuration Merging, Multi-Format Configuration Loading, Configuration Management Libraries.

Which projects share features with symfony/config?

Projects with overlapping indexed features include: node-config/node-config — This is a configuration manager for Node.js applications that handles hierarchical settings across different… dhall-lang/dhall-lang — Dhall is a type-safe configuration language designed to create programmable configuration files that are guaranteed to… lightbend/config — This is a configuration library for JVM applications that parses HOCON, JSON, and Java properties files into an… dynaconf/dynaconf — Dynaconf is a configuration management library for Python applications that provides a unified system for loading,… hashicorp/hcl — HCL is a configuration language implementation designed for parsing, evaluating, and encoding structured settings… cosmiconfig/cosmiconfig — Cosmiconfig is a Node.js configuration loader used to find and load application settings from package manifests, rc…

Projects sharing features with Config

These projects share indexed features with Config. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • dhall-lang/dhall-langdhall-lang avatar

    dhall-lang/dhall-lang

    4,458View on GitHub↗

    Dhall is a type-safe configuration language designed to create programmable configuration files that are guaranteed to terminate. It is a non-Turing-complete language that uses a strict type system to ensure correctness and prevent infinite loops during evaluation. The project functions as a deterministic configuration engine and marshalling tool, converting programmable expressions into static formats such as JSON, YAML, and Bash. It distinguishes itself through a focus on security and integrity, using semantic hashing to pin remote imports and enforcing origin policies to prevent data exfil

    Dhallconfiguration-languagedhall
    View on GitHub↗4,458
  • node-config/node-confignode-config avatar

    node-config/node-config

    6,427View on GitHub↗

    This is a configuration manager for Node.js applications that handles hierarchical settings across different deployment environments. It functions as an environment-based loader and settings parser that merges default configurations with overrides based on the current runtime context and hostname. The project distinguishes itself through a priority-based merge strategy that incorporates environment variables, command-line arguments, and external data sources to supersede file-based settings. It supports multi-format parsing for JSON, YAML, JavaScript, and TypeScript files, and allows for cust

    JavaScriptconfigdeploymentproperties
    View on GitHub↗6,427
  • lightbend/configlightbend avatar

    lightbend/config

    6,309View on GitHub↗

    This is a configuration library for JVM applications that parses HOCON, JSON, and Java properties files into an immutable tree structure. It resolves ${...} placeholders by traversing the configuration tree and falling back to environment variables and system properties, and validates loaded configurations against a reference schema. The library loads configuration from classpath resources, files, URLs, system properties, and environment variables, merging them with priority-based override semantics. It provides typed value access with automatic type coercion, supports dot-path navigation,

    Javaconfiguration-libraryhoconsupported
    View on GitHub↗6,309
  • dynaconf/dynaconfdynaconf avatar

    dynaconf/dynaconf

    4,308View on GitHub↗

    Dynaconf is a configuration management library for Python applications that provides a unified system for loading, validating, and managing settings. It aggregates configuration data from multiple files, environment variables, and external stores into a single object using a defined precedence order. The project distinguishes itself through a layered environment manager that separates settings into distinct profiles, such as development and production. It includes a declarative validation framework to enforce data rules and type constraints during the loading process, as well as an external s

    Python
    View on GitHub↗4,308
Compare all 30 related projects→