urlredir
koanf
urlredir | koanf | |
---|---|---|
3 | 12 | |
31 | 2,370 | |
- | - | |
3.7 | 7.6 | |
26 days ago | 13 days ago | |
Go | Go | |
GNU Affero General Public License v3.0 | MIT License |
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.
urlredir
-
Why is gin so popular?
I've used frameworks before (revel, beego) but lately just chi, stdlib and some tricks. https://github.com/ptman/urlredir has some of these tricks, but is a bit dated
-
What are some good open source project to read when learning Go?
I've tried to write https://github.com/ptman/urlredir as educational code. It's a bit dated, but at least simple. Feedback welcome.
-
Can you share some Go package that you think has high quality clean code?
I tried to write simple educational code: https://github.com/ptman/urlredir
koanf
-
Nees help install knadh/koanf
LINK: https://github.com/knadh/koanf
-
App init and graceful watch lib recommendations ?
For configuration, I like Koanf.
-
Two ways to provide configuration: command-line, yaml file.
Of course. You should always use a good config package. caarlos0/env is okay but https://github.com/knadh/koanf is a better all around solution imo.
- Simplify Your Configurations in Go
-
Golang equivalent of Python’s click (CLT framework)
You can also use Viper with urfave/cli, or you can replace Viper with knadh/koanf, which I personally prefer.
-
Viper – Go Configuration with Fangs
Use viper with care. It has some dangerous fundamental flaws [1]. We got bitten hard, submitted a PR [2] and followed up for a year and a half to no avail, before I went ahead and reinvented the wheel and wrote koanf (plug), specifically to avoid viper's flaws.
Most importantly:
- Breaks JSON, YAML, TOML etc. language specs by forcibly lowercasing all keys internally. Dangerous because it can silently merge differently cased config keys into lowercase.
- Hard codes big unnecessary dependencies into the core, significantly bloating build sizes. No separation or abstraction.
[1] https://github.com/spf13/viper/pull/635
[2] https://github.com/knadh/koanf#alternative-to-viper
-
Extracting embedded files
It's not hard to a) look for a key in an environment variable b) accept a key as a parameter c) load a key from a file d) all of the above with something like koanf
- What are some good open source project to read when learning Go?
-
Coral, a friendly Cobra fork with nearly all its features, but only 4 dependencies
Came across this the other day https://github.com/knadh/koanf as an alternative to Viper.
-
What are your favorite packages to use?
https://github.com/knadh/koanf for config management. Readme contains why it's a good alternative to viper.
What are some alternatives?
echo-swagger - echo middleware to automatically generate RESTful API documentation with Swagger 2.0.
viper - Go configuration with fangs
linkchecker - Recursively crawls a website and checks that URLs return 200.
config - JSON or YAML configuration wrapper with convenient access methods.
go - The Go programming language
konfig - Composable, observable and performant config handling for Go for the distributed processing era
errors - Simple error handling primitives
cleanenv - ✨Clean and minimalistic environment configuration reader for Golang
mab - Library for multi-armed bandit selection strategies, including efficient deterministic implementations of Thompson sampling and epsilon-greedy.
kelseyhightower/envconfig - Golang library for managing configuration data from environment variables
Ory Hydra - OpenID Certified™ OpenID Connect and OAuth Provider written in Go - cloud native, security-first, open source API security for your infrastructure. SDKs for any language. Works with Hardware Security Modules. Compatible with MITREid.
go-simple-config - open source for accessing and storing configuration