tyson
json5
tyson | json5 | |
---|---|---|
11 | 95 | |
530 | 6,308 | |
0.8% | 1.0% | |
6.9 | 0.0 | |
about 1 month ago | 5 months ago | |
Go | JavaScript | |
Apache License 2.0 | GNU General Public License v3.0 or later |
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.
tyson
- TySON: TypeScript Object Notation
- TySON (TypeScript Object Notation)
- TySON: Use TypeScript as a Configuration Language
-
Rethinking Infrastructure as Code from Scratch
I have a similar view to yours: as soon as you need variables, imports, functions or any other type of logic ... the existing "data-only" formats break down. Over time people either invent new configuration languages that enable logic (i.e. cue or jsonnet), or they try to bolt-in some limited version of these primitives into their configuration.
My personal take is that at some point you are better of just using a full programming langugage like TypeScript. We created TySON https://github.com/jetpack-io/tyson to experiment with that idea.
- Show HN: TySON – TypeScript as Configuration
- TySON: a native go library that lets you use TypeScript as an embedded configuration language without depending on Node or V8
-
TySON: TypeScript as an embeddable configuration language, without depending on Node or V8
Apparently "not depending on Node or V8" means depending on some random Go JS engine instead.
json5
- JSON5 – JSON for Humans
- Why the fuck are we templating YAML? (2019)
-
I pre-released my project "json-responder" written in Rust
JSON5 support
-
topoconfig: enhancing config declarations with graphs
Meanwhile, formats have been evolving (JSON5, YAML), config entry points are constantly changing. These fluctuations, fortunately, were covered by tools like the cosmiconfig.
-
That's a Lot of YAML
I think JSON5 is fairly close to this: https://json5.org
I reckon the only thing it's missing to be truly accessible to non-techies is that string values still need to be quoted, i.e. you can't have:
key: this is my value
(I'm definitely not saying it would be a good idea to allow quotes to be dropped, just that that's the only potential stumbling block I see for non-techies.)
-
XML is better than YAML
I believe that's JSON5.
https://github.com/json5/json5
It's my preferred configuration file format, it fixes all the problems I have with JSON (trailing commas, comments) without turning it into a mess full of gotchas like YAML.
- Fx – Terminal JSON Viewer
- What Is Wrong with TOML?
-
🚀 'GET' API in API Maker
JSON 5 support
-
TySON: a native go library that lets you use TypeScript as an embedded configuration language without depending on Node or V8
I would like to see mention of JSON5 which is 11 years its elder. For comments in JSON, JSON5 is a good starting point.
What are some alternatives?
json5-spec - The JSON5 Data Interchange Format
Json.NET - Json.NET is a popular high-performance JSON framework for .NET
cdk-ecs-service-extensions
hjson-js - Hjson for JavaScript
gookit/config - 📝 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应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名
jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]
dhall-lang - Maintainable configuration files
toml - Tom's Obvious, Minimal Language
goConfig - goconfig uses a struct as input and populates the fields of this struct with parameters from command line, environment variables and configuration file.
jsonnet - Jsonnet - The data templating language
goja - ECMAScript/JavaScript engine in pure Go
sublime-hjson - Hjson support for Sublime Text