Top 15 Go TOML Projects
-
and probably something else will be added in the future. The final kind of launch command would like to see such djob [options] - command. Command is the command (with arguments to run). -- should separate the arguments of the utility from the arguments of the program to run. There are several excellent solutions for working with command-line arguments, such as spf13/cobra or urfave/cli. But they’re good for building an interface out of a lot of commands, and for one (as in my example) they’re redundant. So I used the flag library. I have defined the following structure with arguments:
-
dasel
Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.
Project mention: Implementing a simple jq clone in Go, and basics of Go memory profiling | reddit.com/r/golang | 2022-07-11I don't know what's up with it but I opened an issue: https://github.com/TomWright/dasel/issues/236
-
Scout APM
Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.
-
-
koanf
Simple, lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper.
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.
-
This related project, on the other hand, embraced it (for better or for worse):
-
gookit/config
📝 Go configuration manage(load,get,set,export). support JSON, YAML, TOML, INI, HCL, ENV and Flags. Multi file load, data override merge, parse ENV var. Go应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名 (by gookit)
-
config
A lightweight yet powerful configuration manager for the Go programming language (by golobby)
-
SonarLint
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
-
-
re-txt
converts text-formats from one to another, it is very useful if you want to re-format a json file to yaml, toml to yaml, csv to yaml, ... etc
-
-
-
-
TySug
A project around helping to prevent typing typos. TySug (Typo Suggestions) suggests alternative words with respect to keyboard layouts
-
I'm not sure if it fits your description, but a while ago me and my associate made https://github.com/link-society/gotempl
-
swap
Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env). (by oblq)
Go TOML related posts
- re-txt: convert text files from yaml/json/toml/json to json/toml/yaml
- re-txt: convert/transform text files from json/yaml/toml/csv to yaml/json/toml
- Re-txt: convert from JSON/YAML/toml/CSV to YAML/JSON/toml
- re-txt: from json/yaml/toml/csv to yaml/json/toml
- a2a - anything to anything converter with pipes support, currently supports some text-formats only
Index
What are some of the best open-source TOML projects in Go? This list will help you:
Project | Stars | |
---|---|---|
1 | urfave/cli | 18,805 |
2 | dasel | 3,553 |
3 | go-toml | 1,278 |
4 | koanf | 1,094 |
5 | faq | 378 |
6 | gookit/config | 377 |
7 | config | 288 |
8 | fig | 222 |
9 | re-txt | 67 |
10 | frontmatter | 32 |
11 | CONFLATE | 28 |
12 | go-binder | 15 |
13 | TySug | 12 |
14 | gotempl | 7 |
15 | swap | 6 |
Are you hiring? Post a new remote job listing for free.