Viper - Go configuration with fangs

  •        74

Viper is a complete configuration solution for Go applications including 12-Factor apps. It is designed to work within an application, and can handle all types of configuration needs and formats.

Viper does the following for you:

  1. Find, load, and unmarshal a configuration file in JSON, TOML, YAML, HCL, or Java properties formats.
  2. Provide a mechanism to set default values for your different configuration options.
  3. Provide a mechanism to set override values for options specified through command line flags.
  4. Provide an alias system to easily rename parameters without breaking existing code.
  5. Make it easy to tell the difference between when a user has provided a command line or config file which is the same as the default.

https://github.com/spf13/viper

Tags
Implementation
License
Platform

   




Related Projects

BlackViperScript - Sets Win 10 Services based on Black Viper's Service Configurations

  •    PowerShell

This script lets you set Windows 10's services based on Black Viper's Service Configurations, your own Service Configuration (If in a proper format), a backup of your Service Configurations made by this script, or a Custom Configuration using the script. PPS. My Thanks goes out to all that have helped in any way.

Cobra - A Commander for modern Go CLI interactions

  •    Go

Cobra is both a library for creating powerful modern CLI applications as well as a program to generate applications and command files. Cobra is a library providing a simple interface to create powerful modern CLI interfaces similar to git & go tools.

QConf - Qihoo Distributed Configuration Management System

  •    C++

We have build another interesting proect pika. Pika is a nosql compatible with redis protocol with huge storage space. You can have a try.QConf is a Distributed Configuration Management System! A better replacement of the traditional configuration file. As designed, configuration items which is constantly accessed and modified should be completely separated with application code, and QConf is where it should be.

Fluent NHibernate - Fluent mapping for model

  •    CSharp

Fluent, XML-less, compile safe, automated, convention-based mappings for NHibernate. Fluent NHibernate offers an alternative to NHibernate's standard XML mapping files. Rather than writing XML documents, you write mappings in strongly typed C# code. This allows for easy refactoring, improved readability and more concise code.

EnvKey - Protect API keys and credentials, Keep configuration in sync everywhere.

  •    Javascript

This is EnvKey's cross-platform native application. It supports Mac, Windows, and Linux. EnvKey is an end-to-end encrypted secrets and configuration management tool. It keeps your configuration securely and automatically in sync for all your developers and servers.


Etch - System Configuration Management

  •    Ruby

A tool for system configuration management, i.e. management of the configuration files of the operating system and core applications. Easy for a professional system administrator to start using, yet scalable to large and/or complex environments.

config - Configuration library for JVM languages

  •    Java

Configuration library for JVM languages.This library limits itself to config files. If you want to load config from a database or something, you would need to write some custom code. The library has nice support for merging configurations so if you build one from a custom source it's easy to merge it in.

pureconfig - A boilerplate-free library for loading configuration files

  •    Scala

PureConfig is a Scala library for loading configuration files. It reads Typesafe Config configurations written in HOCON, Java .properties, or JSON to native Scala classes in a boilerplate-free way. Sealed traits, case classes, collections, optional values, and many other types are all supported out-of-the-box. Users also have many ways to add support for custom types or customize existing ones. Click on the demo gif below to see how PureConfig effortlessly translates your configuration files to well-typed objects without error-prone boilerplate.

ConfigTransform: Multi environment configuration management for Visual Studio

  •    

Tackles multi environment configuration management by leveraging on MSBuild to allow transformation of custom configuration files - not just web.config

NetDist Configuration Management

  •    Perl

NetDist is a configuration management/distribution solution. It can handle the distribution of configuration files to any number of hosts, can be set up to generate configuration files automatically, and provides a central location for configs.

viper - Binary analysis and management framework

  •    Python

Viper is a binary analysis and management framework. Its fundamental objective is to provide a solution to easily organize your collection of malware and exploit samples as well as your collection of scripts you created or found over the time to facilitate your daily research. Wanna contribute? Viper is an open, BSD-licensed, collaborative development effort that heavily relies on contributions from the whole community. We welcome tickets, pull requests, feature suggestions.

tachyon - An experimental configuration management system inspired by ansible

  •    Go

Tachyon is an experimental configuration management tool inspired by ansible implemented in golang. I find the best way to learn something is to try to implement it. I'm curious about ansible's model for configuration management and as a fun weekend project began I this project.

Consul - Tool for Service Discovery, Monitoring and Configuration

  •    Go

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable. Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. Register external services such as SaaS providers as well. It prevents routing requests to unhealthy hosts and enables services to easily provide circuit breakers.

JFig

  •    Java

JFig is a simple, powerful tool to manage application configuration

conform - Easy, powerful, and extendable configuration tooling for releases.

  •    Elixir

See the full documentation here. The definition of conform is "Adapt or conform oneself to new or different conditions". As this library is used to adapt your application to its deployed environment, I think it's rather fitting. It's also a play on the word configuration, and the fact that Conform uses an init-style configuration, maintained in a .conf file.

CCNetConfig

  •    

CCNetConfig is a GUI tool to create and maintain the ccnet configuration file for CruiseControl.NET. CCNetConfig allows you to create CruiseControl.NET configuration file by adding a new project and setting properties. CCNetConfig supports all standard configuration blocks and ca

CFILE (Configuration File Management)

  •    Perl

CFILE is a distributed configuration file management system. Unlike many systems that try to provide a nice way to configure individual machines, CFILE provides a way to keep configuration consistant across an entrie group of machines.

ini-parser - Read/Write an INI file the easy way!

  •    CSharp

A .NET, Mono and Unity3d compatible(*) library for reading/writing INI data from IO streams, file streams, and strings written in C#. Also implements merging operations, both for complete ini files, sections, or even just a subset of the keys contained by the files.





We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.