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
Back to spf13/viper

Projects sharing features with Viper

30 open-source projects similar to spf13/viper, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • knadh/koanfknadh avatar

    knadh/koanf

    3,871View on GitHub↗

    koanf is a configuration management library for Go designed to load, merge, and unmarshal application settings from multiple sources into structured objects. It functions as a multi-source config loader that aggregates data from environment variables, files, and remote providers into a single unified map. The system utilizes a pluggable architecture for parsing and data abstraction, allowing it to transform bytes from formats such as JSON, YAML, and TOML into nested maps. It supports dynamic configuration watching to monitor external sources and trigger automatic reloads when settings change.

    Goconfigconfig-loaderconfiguration
    View on GitHub↗3,871
  • spf13/cobraspf13 avatar

    spf13/cobra

    44,107View on GitHub↗

    Cobra is a development framework for building command-line applications in Go. It organizes application logic into a hierarchical tree structure where each node represents a command, complete with its own flags and execution logic. This structure allows developers to build complex, nested command interfaces that mirror business domains while maintaining a clean separation between command orchestration and underlying business logic. The framework distinguishes itself through its declarative approach to metadata and configuration. It automatically derives help documentation, usage instructions,

    Goclicli-appcobra
    View on GitHub↗44,107
  • alecthomas/kongalecthomas avatar

    alecthomas/kong

    2,976View on GitHub↗

    Kong is a declarative command line interface framework and parser for Go. It maps flags and positional arguments directly into typed Go structures using struct tags, allowing developers to define terminal interfaces through data models rather than manual parsing logic. The project functions as a configuration mapper that populates Go structures from a combination of command-line arguments, environment variables, and JSON files. It distinguishes itself by providing a dependency injection container to pass external services into command handlers and a plugin architecture for dynamic command reg

    Gocommand-linecommandsflags
    View on GitHub↗2,976

AI search

Explore more awesome repositories

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

Find more with AI search
  • caarlos0/envcaarlos0 avatar

    caarlos0/env

    6,004View on GitHub↗

    env is a Go library that reads environment variables and populates the fields of a Go struct according to tag directives. It uses reflection to iterate over struct types and tags at runtime, mapping environment variable names to struct fields and applying parsing behavior defined in struct tags. The library supports required field validation, returning errors when marked fields are missing or empty after parsing. It also provides default value fallback from struct tags when environment variables are not set, environment variable expansion that recursively substitutes references within values,

    Goconfigconfigurationenvironment
    View on GitHub↗6,004
  • quarkusio/quarkusquarkusio avatar

    quarkusio/quarkus

    15,479View on GitHub↗

    Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program

    Javacloud-nativehacktoberfestjava
    View on GitHub↗15,479
  • facebookresearch/hydrafacebookresearch avatar

    facebookresearch/hydra

    10,449View on GitHub↗

    Hydra is a hierarchical configuration framework and type-safe configuration manager. It is designed to manage complex application settings through composable configuration files and command-line overrides, ensuring that configuration values match expected data types during instantiation. The framework functions as a dynamic object instantiator that creates class instances directly from hierarchical configuration values and nested objects. It also operates as a hyperparameter sweep orchestrator and cluster job launcher, enabling the execution of multiple application runs across parameter range

    Python
    View on GitHub↗10,449
  • indexzero/nconfI

    indexzero/nconf

    3,859View on GitHub↗

    nconf is a configuration management library for Node.js that aggregates application settings from multiple sources into a single, unified store. It provides a centralized mechanism to manage parameters by merging data from command-line arguments, environment variables, and local files. The library distinguishes itself through a hierarchical provider system that enforces strict precedence rules when conflicting values are present. It supports atomic object merging to maintain consistent data structures and utilizes lazy loading to ensure that configuration sources are read only when accessed a

    JavaScript
    View on GitHub↗3,859
  • ufoscout/go-upufoscout avatar

    ufoscout/go-up

    43View on GitHub↗

    go-up! A simple configuration library with recursive placeholders resolution and no magic.

    Go
    View on GitHub↗43
  • one-com/goneOne-com avatar

    One-com/gone

    51View on GitHub↗

    Golang packages for writing small daemons and servers.

    Godaemongolanglogging-library
    View on GitHub↗51
  • joho/godotenvjoho avatar

    joho/godotenv

    10,483View on GitHub↗

    godotenv is a Go library designed to load, parse, and serialize environment configuration files. It provides tools to extract configuration data from files into maps and inject those key-value pairs directly into the system environment of a Go application process. The project includes a configuration file serializer for exporting environment variable maps back into formatted files and a parser for extracting data without modifying the system environment. It supports injecting variables from strings or files into the process environment using priority-based overloading and overwriting. The li

    Godotenvenvironment-variablesgo
    View on GitHub↗10,483
  • lalamove/konfiglalamove avatar

    lalamove/konfig

    646View on GitHub↗

    Composable, observable and performant config handling for Go for the distributed processing era

    Gocomposableconfigconfiguration
    View on GitHub↗646
  • the4thamigo-uk/conflatethe4thamigo-uk avatar

    the4thamigo-uk/conflate

    36View on GitHub↗

    Library providing routines to merge and validate JSON, YAML and/or TOML files

    Go
    View on GitHub↗36
  • antham/envhantham avatar

    antham/envh

    100View on GitHub↗

    Go helpers to manage environment variables

    Goconfiguration-managementenvironmentgolang
    View on GitHub↗100
  • vrischmann/envconfigvrischmann avatar

    vrischmann/envconfig

    250View on GitHub↗

    Small library to read your configuration from environment variables

    Goconfigurationgogolang
    View on GitHub↗250
  • kelseyhightower/envconfigkelseyhightower avatar

    kelseyhightower/envconfig

    5,404View on GitHub↗

    envconfig is a Go configuration decoder and environment variable mapper that deserializes environment variables into structured Go data types. It provides tools for validating mandatory fields and ensuring application configuration adheres to the external configuration patterns of twelve-factor app compliance. The library features a help generator that creates formatted usage text based on struct definitions to describe expected environment variables. It also includes a validation tool capable of detecting unused environment variables that match a specific prefix but do not correspond to any

    Go
    View on GitHub↗5,404
  • beatlabs/harvesterbeatlabs avatar

    beatlabs/harvester

    134View on GitHub↗

    Harvest configuration, watch and notify subscriber

    Goconfiguration-managementgogolang
    View on GitHub↗134
  • heetch/confitaheetch avatar

    heetch/confita

    507View on GitHub↗

    Load configuration in cascade from multiple backends into a struct

    Goconfigurationconfiguration-loadergolang
    View on GitHub↗507
  • hjson/hjson-gohjson avatar

    hjson/hjson-go

    353View on GitHub↗

    Hjson for Go

    Gogohjson
    View on GitHub↗353
  • go-ini/inigo-ini avatar

    go-ini/ini

    3,542View on GitHub↗

    Package ini provides INI file read and write functionality in Go

    Goconfigurationgoini
    View on GitHub↗3,542
  • gookit/configgookit avatar

    gookit/config

    583View on GitHub↗

    📝 Go configuration manage(load,get,set,export). support JSON, YAML, TOML, Properties, INI, HCL, ENV and Flags. Multi file load, data override merge, parse ENV var. Go应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名

    Goconfigconfig-managementconfiguration
    View on GitHub↗583
  • jeremyloy/configJeremyLoy avatar

    JeremyLoy/config

    339View on GitHub↗

    12 factor configuration as a typesafe struct in as little as two function calls

    Go12-factorcloudconfiguration
    View on GitHub↗339
  • theskumar/python-dotenvtheskumar avatar

    theskumar/python-dotenv

    8,794View on GitHub↗

    python-dotenv is a library and command line interface for managing environment variables in Python applications. It functions as a configuration parser and loader that reads key-value pairs from files and injects them into the system environment, enabling the decoupling of application configuration from source code. The project provides a command line interface for manipulating and editing environment variables within configuration files. It also includes a mechanism for recursive variable interpolation, allowing dynamic placeholders within configuration files to be resolved using existing en

    Python
    View on GitHub↗8,794
  • burntsushi/tomlBurntSushi avatar

    BurntSushi/toml

    4,904View on GitHub↗

    This is a TOML parser and serializer for the Go language. It serves as a data serialization library and configuration file mapper that encodes and decodes data between Go structures and the TOML configuration format. The library provides interfaces for custom type marshaling, allowing for specialized logic when parsing or serializing specific data types. It transforms structured objects into deterministic TOML documents for storage or transmission. The project covers a broad range of data processing capabilities, including structured value encoding, TOML data generation, and metadata inspect

    Go
    View on GitHub↗4,904
  • kelseyhightower/confdkelseyhightower avatar

    kelseyhightower/confd

    8,424View on GitHub↗

    confd is a dynamic configuration templating engine and manager that generates local application configuration files using data from environment variables and distributed key-value stores. It functions as a client for stores such as etcd and Consul, monitoring these sources for changes to automate the creation and update of files on the local filesystem. The tool serves as an application process reloader, capable of automatically restarting or signaling dependent applications when their underlying configuration files are modified. This ensures that updated settings from a centralized source of

    Go
    View on GitHub↗8,424
  • hashicorp/consulhashicorp avatar

    hashicorp/consul

    29,943View on GitHub↗

    Consul is a distributed coordination service and service mesh tool used for service discovery, health monitoring, and cluster state management across dynamic networks. It provides a platform for locating network addresses of services and managing traffic across distributed infrastructure using DNS and HTTP interfaces. The project distinguishes itself through multi-datacenter network orchestration, enabling the federation of services across different regions using mesh gateways. It secures communication via a service mesh architecture that employs identity-based authorization and mutual TLS en

    Goapi-gatewayconsulecs
    View on GitHub↗29,943
  • diegomarangoni/typenvdiegomarangoni avatar

    diegomarangoni/typenv

    12View on GitHub↗

    Go minimalist typed environment variables library

    Gogogolanglibrary
    View on GitHub↗12
  • deatil/go-arraydeatil avatar

    deatil/go-array

    22View on GitHub↗

    A Go package that read or set data from map, slice or json

    Goarraygogo-array
    View on GitHub↗22
  • cristalhq/aconfigcristalhq avatar

    cristalhq/aconfig

    634View on GitHub↗

    Simple, useful and opinionated config loader.

    Gocommand-lineconfigconfiguration
    View on GitHub↗634
  • dsbasko/go-cfgdsbasko avatar

    dsbasko/go-cfg

    49View on GitHub↗

    The library provides a unified way to read configuration data from different sources, such as environment variables, command line flags, and configuration files.

    Go
    View on GitHub↗49
  • golobby/configgolobby avatar

    golobby/config

    366View on GitHub↗

    A lightweight yet powerful configuration manager for the Go programming language

    Goconfigconfig-managementconfig-manager
    View on GitHub↗366