eps
json5
eps | json5 | |
---|---|---|
1 | 94 | |
12 | 6,301 | |
- | 0.9% | |
0.0 | 0.0 | |
about 1 year ago | 5 months ago | |
Go | JavaScript | |
GNU Affero General Public License v3.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.
eps
-
The Perfect Configuration Format? Try TypeScript
I think parsing YAML or JSON into typed structures is the easier way to go. I e.g. do that in Golang using a little form validation and coercion library I've written. The end result is a nested, strongly typed data structure. Here's an example: https://github.com/iris-connect/eps/blob/master/settings.go (the accompanying form validation configuration: https://github.com/iris-connect/eps/blob/master/forms/settin...)
In my experience, a lot of the validation needs to be done at runtime anyway as type checking alone won't allow you to e.g. validate if a string is a valid regular expression. Also, I think using TypeScript for configuration requires you to compile & interpret the configuration file in order to check it and obtain the data values. Not sure if I like that as it requires bundling the Typescript compiler with your program.
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?
vm2 - Advanced vm/sandbox for Node.js
Json.NET - Json.NET is a popular high-performance JSON framework for .NET
dhall-lang - Maintainable configuration files
hjson-js - Hjson for JavaScript
dxcfg - Configuration as code for the masses
jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]
node-config - Node.js Application Configuration
toml - Tom's Obvious, Minimal Language
jk - Configuration as Code with ECMAScript
jsonnet - Jsonnet - The data templating language
deno - A modern runtime for JavaScript and TypeScript.
sublime-hjson - Hjson support for Sublime Text