viper VS go-toml

Compare viper vs go-toml and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
viper go-toml
74 2
25,756 1,628
- -
8.8 7.5
5 days ago 12 days ago
Go Go
MIT License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

viper

Posts with mentions or reviews of viper. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-22.

go-toml

Posts with mentions or reviews of go-toml. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-13.
  • What Is Wrong with TOML?
    15 projects | news.ycombinator.com | 13 Sep 2023
    I wrote one of the Go implementations [0] when TOML was announced and have maintained it since.

    As a library implementor, I wish arrays would hold only one type at a time, but I get that could be useful for users. But as a user, I wish tables were fully defined once (more can't be added up later in the file), especially when using larger files.

    [0]: https://github.com/pelletier/go-toml

  • Hw to open these files locally using vs code?
    1 project | /r/webdev | 14 May 2023
    Looks like a it's struggling to install a go dependency, something prob changed since the time this project was made and now. I don't use go but someone more familiar with it can prob help you. Googling the error brought me to this it might solve your problem https://github.com/pelletier/go-toml/discussions/562

What are some alternatives?

When comparing viper and go-toml you can also consider the following projects:

godotenv - A Go port of Ruby's dotenv library (Loads environment variables from .env files)

hocon - go implementation of lightbend's HOCON configuration library https://github.com/lightbend/config

envconfig - Small library to read your configuration from environment variables

ini - Package ini provides INI file read and write functionality in Go

koanf - Simple, extremely lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.

toml - Instream TOML to JSON encoder

cleanenv - ✨Clean and minimalistic environment configuration reader for Golang

env - A simple and zero-dependencies library to parse environment variables into structs

kelseyhightower/envconfig - Golang library for managing configuration data from environment variables

go-ini - Go package that encodes and decodes INI-files

mapstructure - Go library for decoding generic map values into native Go structures and vice versa.

aconfig - Simple, useful and opinionated config loader.